원기날씨 업데이트 2011/01/02 v1.2.0

2011. 1. 2. 02:04


이번 업데이트로 실행에 어려움을 겪으시는 분들을 위한 내용입니다. 아래 내용을 따라해 주세요.
▶ 공통사항
  1. 업데이트 후 기존에 사용하던 위젯을 모두 삭제합니다.( **매우 중요합니다 )
  2. 1.2.0 이후 업데이트로 즐겨찾는 지역 DB가 초기화 되었습니다. 먼저 어플을 실행하셔서 지역을 추가하신 뒤 위젯을 추가하셔야 합니다. 이때 기존 위젯을 통해서 어플을 실행하지 마시고 아이콘으로 실행 하시기 바랍니다.
  3. 어플 실행에 문제가 생길 경우 일부 기종에 따라서 기존의 데이터와 충돌로 인해 오류가 생기는 경우도 있습니다. 어플을 완전히 삭제하신 뒤 새로 설치해 보시길 권장합니다.
▶ 프로요의 경우
  1. 핸드폰의 <설정> → <응용프로그램> → <응용프로그램 관리>로 들어갑니다. 기종에 따라서 옵션의 제목이 약간씩 다를 수 있습니다.
  2. 핸드폰에 설치된 어플의 목록이 쭉 나올겁니다. 그중에 원기날씨를 찾아서 클릭합니다.
  3. 상단 버튼중에 <데이터 지우기>가 있습니다. 이를 실행합니다.
  4. 그리고 어플을 실행합니다.
▶ 외장메모리에 설치했을 경우
  1. 일단 원기날씨는 위젯을 갖는 어플이기 때문에 외장메모리 설치를 권장하지 않습니다. 다만 부득이하게 외장메모리에 설치하여 사용하실 경우 위젯과 알람의 정상적인 동작을 보장할 수 없습니다. 이점 먼저 참고해 주시기 바랍니다.
  2. 보통 프로요의 기본 기능으로 외장메모리에 어플을 옮기면 시스템의 /data폴더까지 옮겨지진 않습니다. 기타 다른 사설패치를 할 경우 /app, /data를 포함한 모든 폴더가 다 옮겨지기도 합니다. 원기날씨의 기본 DB경로는 /data/data/wongi.weather/databases 입니다. 이 위치에 address.db, favorit.db, widget.db 이렇게 세 가지 파일이 잘 있는지 확인하신 뒤 없다면 외장메모리에서 원래의 위치로 옮겨오시기 바랍니다.(루팅이 필요하지만 사설패치를 하셨다면 아마도 하셨으리라 예상합니다.)
  3. 강제로 외장설치를 지정하셨던 분은 설치 후 내장메모리로 옮긴다 하더라도 정상적인 작동이 이루어지질 않습니다. 잠시 강제 설치를 풀어두시고 처음부터 내장에 설치하시면 정상적으로 동작합니다.
▶ 옵큐에서 가로/세로 전환시 위젯 문제
  1. 옵큐는 키패드가 열리면 항상 가로모드로 고정되기 때문에 바탕화면 전환시 옵큐만의 무언가 특정 액션이 있는것으로 파악되고 있습니다. 제가 테스트에 사용하는 기기가 옵큐가 아니라 당장 해결하기는 어려우며 ㅠㅠ 여러 방면으로 해결책을 찾고 있습니다. 빠른 시일내로 수정할 수 있도록 하겠습니다.


- 누락된 알람 기상상태 추가
- <즐겨찾는 지역 + 알람 설정> 백업/복원 기능 추가
   └ (외장메모리 쓰기 퍼미션 추가)
- 상세 업데이트 내역 추가
   └ (어플 실행 후 메뉴키로 팝업)
- 일부 배경화면 변경
- 어플 용량 감소(약 400kb)
- 알람 설정 화면 수정
- 메인 어플 스크롤 위치 변경
- 4×4 위젯 제거
- 4×2, 4×3 위젯 사이즈 고정
- 주간예보 최고/최저온도 위치 바꿈
- 위젯 관련 버그 수정

- 위젯 스킨 추가
- 위젯 업데이트 주기 설정 가능
- 위젯 터치 동작 설정 가능
- 위젯 데이터 복구 기능 추가
- 전국날씨 업데이트 설정 가능

- 기타 등등


 먼저, 이번 업데이트로 사용자분들의 즐겨찾는 지역이 초기화 되었습니다. 즐겨찾는 지역의 백업/복원 기능과 안정적인 위젯 동작을 위해 부득이하게 내린 결정이오니 넓은 아량으로 이해해 주시길 바라며 불편을 드려 죄송합니다. (__) 혹 실행에 문제가 있으신 분들은 어플을 아예 삭제하신 뒤 새로 설치해 주시기 바랍니다. 이번 업데이트는 원기날씨를 사용하시는 분들께 드리는 새해 선물입니다. ^^;;
** 업데이트 후 반드시 기존 사용하시던 위젯을 삭제하시고 새로 추가하셔야 합니다.



누락된 알람 기상상태 추가
:: 알람 설정시 특정 기상예보를 잡아내지 못하는 것을 발견하여 수정했습니다.

<즐겨찾는 지역 + 알람 설정> 백업/복원 기능 추가
:: 위젯 업데이트와 오류수정을 위해 고민하던 중 이전에 하나로 합쳐져있던 DB를 분리하여 활용하는 아이디어가 떠올라서 ^^; 작업 하는김에 백업/복원 기능도 추가했습니다. 백업된 파일이 저장되는 기본 경로는 '/sdcard/data/com.wongi.weather/favorit.db' 입니다. 핸드폰을 초기화 하시거나 외장메모리를 포맷 하시는 경우 저 폴더에 db파일만 옮겨 두시면 설정하셨던 지역과 해당 지역의 알람까지 전부 복원할 수 있습니다. 이로인해 어플이 사용하는 권한 중 외장메모리 쓰기가 새로 추가되었습니다.

상세 업데이트 내역 추가
:: 매번 업데이트 후 포스팅 하는 내용을 많은 분들이 잘 안보시는것 같아서 메뉴에 추가했습니다. 스크롤의 압박이 있지만 한번씩은 꼭 읽어주시길 부탁드립니다.

일부 배경화면 변경
:: 맑음/낮, 맑음/밤, 구름조금/낮, 구름많음/밤 배경화면이 변경되었습니다. 이전에 일부 배경화면 때문에 주간예보의 온도가 잘 안보이신다는 의견이 있어서, 평소 제 맘에 들지 않던 배경 화면과 문제가 되던 배경화면을 확 바꿔버렸습니다. -.-;;

어플 용량 감소(약 400kb)
:: 중복 이미지 중 나인패치를 적용하지 않는 것들을 모두 적용하여 불필요한 이미지들을 제거했습니다. 배경 이미지 중 줄일 수 있는 부분들을 줄이고 프로그램도 나름 최적화를 하여 소스또한 일부 줄어들었습니다.

알람 설정 화면 수정
:: 알람 설정 화면이 직관적이지 않은것 같아서 각 설정 제목 부분에 약간의 변화를 주었습니다.

메인 어플 스크롤 위치 변경
:: 시간별예보, 주간예보 전망, 정보의 스크롤이 화면 가장자리에 너무 딱 붙어 있어서 좀 거리를 두었습니다.

4×4 위젯 제거
:: 이 위젯은 없앨지 말지 많이 고민을 했으나 어짜피 모든 안드로이드 폰에 바탕화면 스크롤(주간예보 전망)을 적용할 수 없다면 이건 바람직하지 않다고 생각해서 없애버렸습니다. -_-;

4×2, 4×3 위젯 사이즈 고정
:: 4×2, 4×3 위젯이 홈 어플에 따라서 세로 크기가 들쭉날쭉 이던걸 고정했습니다. HVGA사이즈의 에뮬레이터에서 정상적인 화면을 확인을 했으나 혹 옵티머스원을 비롯한 저해상도 기기에서 해당 위젯이 잘린다면 스크린샷과 함께 메일을 보내주시기 바랍니다.

주간예보 최고/최저온도 위치 바꿈
:: 주간 예보에서 최저/최고 온도의 위치를 바꾸었습니다.

위젯 관련 버그 수정
:: 바탕화면이 가로/세로로 전환되거나 홈 어플에 의해 바탕화면이 새로 로드되는등 위젯 데이터가 날라가는 현상을 수정했습니다. 혹시나 하고 설정 메뉴에 위젯 데이터 복구 기능도 추가했습니다.

위젯 스킨 추가
:: 제일 힘들었습니다. -_-; 위젯은 정말.. 제한적인 요소들로 원하는 기능을 구현하자니 매우매우 답답하더군요. 각기 다른 데이터를 유지하면서 스킨을 변경한다는게 참.. 쉽지 않았습니다. ㅠㅠ

위젯 업데이트 주기 설정 가능
:: 이제 사용자분들이 직접 위젯 업데이트 주기를 설정할 수 있습니다. 추가하신 모든 위젯에 공통으로 적용됩니다.

위젯 터치 동작 설정 가능
:: 위젯 터치시 동작을 직접 선택 가능합니다. 업데이트, 실행, 직접선택 입니다.

위젯 데이터 복구 기능 추가
:: 위젯의 데이터가 사라지거나 터치가 안먹을 때 요 기능을 실행하면 둘 다 살아납니다. 아마도 이제는 위젯이 죽어버리는 일이 없으리라 예상하지만 혹시나 해서 추가했습니다.

전국날씨 업데이트 설정 가능
:: 이전버전에서 업데이트 횟수를 최초 1회로 고정했던 것을 사용자가 직접 선택할 수 있게 수정했습니다.

 그밖에도 여러 중복되는 부분들을 제거하고 최적화 하였으며 위젯을 추가할 때 지역 선택 화면을 간소화 했습니다. 또 위젯 새로고침 시 로딩 애니메이션이 추가되었습니다. 그외에 제가 기억나지 않아 적지 못한것이 있을 수 있습니다. --;; 다시 한 번 강조하여 말씀드리지만 이젠 위젯을 Service로 제어하기 때문에 더 중요해 졌습니다. 위젯과 알람을 정상적으로 사용하길 원하시는 분은 태스크 킬러의 ignore리스트에 원기날씨를 꼭 추가하셔야 합니다.

 위젯은 정말.. 거의 처음부터 다시 짰습니다. -_-; 근 일주일을 넘게 하루 10시간 이상 원기날씨 코딩에 매달렸더니 참.. 말이 아니네요 --;; 당분간은 새로운 기능추가 계획은 없으며 이번 업데이트로 인한 오류나 소소한 버그 수정에 주력할 생각입니다. 그리고 오늘은.. 반복적으로 질문해주시는 부분들을 QnA로 정리 해봤습니다.


Q. 왜 주간예보가 모레부터 나오나요?
A. 그건 제 의도가 아니라 기상청에서 원래 데이터를 모레부터 뿌려줍니다. ㅠㅠ 요 주소로 가보시면 확인하실 수 있습니다. (http://www.kma.go.kr/weather/forecast/mid-term_01.jsp) 시간별 예보를 자체적으로 필터링 하여 내일 예보부터 표시할 생각은 있으나 말씀드렸던 대로 당분간 새로운 기능 추가 계획은 없기 때문에 언제라고 확답 드리긴 어렵습니다. 정 불편하신 분들은 master_kma@kma.go.kr 요 기상청 메일 주소로 건의 해보시면.. 언젠간 바꿔주지 않을까요? ㅠㅠ

Q. 왜 꼭 내장메모리에 설치해야 되죠?
A. 위젯(AppWidget)을 갖는 모든 안드로이드 어플은 내장메모리에 설치되어야만 합니다. 그냥 단순히 생각해서 외장메모리에 위젯 어플을 설치했는데 → 사용자가 잠깐 외장메모리를 제거했다 → 그리고 어플이 실행되었다 → 이러면 시스템은 오류를 마구 내뿜습니다. 구글은 이걸 방지하기 위해 설치 장소에 제한을 두었습니다. 개발자는 이를 지키는 것이구요. 프로요 사용하시는 분들 중 어플을 강제로 외장메모리에 설치하신 뒤 실행하면 오류를 내뿜어서 에러로그를 정말 많이 보내주십니다. 지역 설정이 안되고 계속 한 곳 이상의 지역을 설정해야 한다하고 시작만 하면 꺼지고..... 내장에 설치해주세요 제발 ㅠㅠ 프로요의 기본 기능으로 어플을 옮기는 것 뿐만 아니라 사설 패치를 통해 어플을 옮기면 사설 패치마다 경로도 제각각이더군요. --;; 외장메모리 설치.. 절대 지원 안할껍니다 ㅠㅠ 차라리 저 말고 구글을 설득해 주세요..

Q. 어플 용량이 왜이리 큰가요?
A. 개발자의 궤변을 늘어놔 보자면.. --;; 이번 업데이트로 어플의 총 사이즈는 단순 환산 2.53MB입니다. 그 중 이미지 용량이 2MB 약간 넘고 DB가 288KB 입니다. 소스만 배포하고 이미지와 DB는 따로 다운받게 하면 확! 줄어든 용량을; 마켓을 통해 보실 수 있겠지만 원기날씨는 위젯(AppWidget)을 갖는 어플입니다. 전 다운받은 이미지와 DB를 다시 내장메모리로 저장합니다. -_- 이러면 똑같습니다. 제가 어플을 만들 때 가장 중요하게 생각하는 것은 '어플은 아름다워야 쓴다' 입니다. 저 이미지들을 바꾸고 그러다 보면 약간은 줄어들 수도 있겠지만 안쓸 생각은 전혀 없습니다. DB도 필히 내장메모리에 저장해야 합니다. 그러면 마켓에서 보신 용량은 그냥 숫자놀음이고 제가 여러분을 낚은것 입니다. --;; 또 저는 아무래도 USB케이블을 꼽고 있을 때가 많은데 이것때문에 어플이 실행 안되는 것도 거슬리더군요 ㅠㅠ 그냥 앞으로도 쭈욱 마켓을 통해 함께 배포할 예정입니다.

Q. 왜 우리동네는 없죠?
A. 기상청이 지원하는 지역 중 일부 없는 지역이 있습니다. 그런 지역은 애초에 기상청에서 기상예보를 발표하지 않기 때문에 추가적으로 제가 할 수 있는 일은 없습니다. ㅠㅠ 이곳 기상청의 페이지에서 검색해 보셔도 해당 지역이 없는 것을 확인 하실 수 있을겁니다. http://www.kma.go.kr/weather/forecast/timeseries.jsp 다만 차후 기상청에서 해당 지역을 지원하게 된다면 제 어플에도 적용하도록 하겠습니다.

Q. 자동 지역 설정이 가능하게 해주세요!
A. '시' 단위의 주소로 날씨를 표시하는것은 괜찮지만 원기날씨의 기본 기능처럼 '동/읍/면' 단위의 주소까지 검색하여 날씨를 표시하기엔 기상청과 구글맵간의 주소 차이가 있기 때문에 쉽지가 않습니다. 구글맵의 주소가 세분화 되어 있지 않거나(예 : 세류동X, 세류2동O) 새로 변경된 주소를 반영하고 있지 않다거나 하는 등의 문제가 있기 때문에 이를 극복할 수 있는 무언가가 필요하며 이런건 개발이 쉽지 않습니다. ㅠㅠ 어떤 식으로 구현해 볼까- 라고 생각은 하지만 딱히 좋은 수가 떠오르질 않고 있기 때문에 쉽사리 손을 대지도 못하고 있는 그런 상황입니다.

Q. 왜 제 의견은 적용 안해주는거죠?
A. 기능 구현에 있어서.. 제 실력이 부족하거나, 어플의 구조상, 안드로이드의 한계로 인해 모든 부분을 다 만들어 낼 수는 없습니다. 또한 제가 '기상예보' 어플에 갖는 저만의 기준이 있기 때문에 모든 의견을 100% 다 적용할 순 없습니다. 그러다보면 어플이 산으로 가겠죠. --;;

Q. 왜 건의사항이나 오류는 마켓 댓글로 안받죠?
A. 물론 마켓의 댓글을 확인 안하는건 아닙니다만, 마켓 댓글을 통해 올려주시면 제가 일일히 답변 달아드리기도 어렵고 오류나 건의사항에 대해서 자세히 파악하기도 힘들어서 입니다. 오류가 생기시면 구체적인 사용 환경(기종, 안드로이드 버전, 홈어플 유무, 사설패치 유무, 인터넷 접속 환경 등)을 함께 말씀해 주시는게 도움이 됩니다. 건의사항이나 기능 추가등은 되도록 자세히 설명을 해주시면 좋구요.

예상되는 Q. 위젯 투명도를 조절하게 해주세요!
A. 원래 이번 업데이트에서 함께 구현하려 했었으나 작업기간이 길어지면서 지치기도 하고 생각보다 쉽게 해결될것 같지 않아서 제외하였습니다. 차차 업데이트 하도록 하겠습니다.

예상되는 Q. 위젯의 지역을 바꾸게 해주세요!
A. 잠깐 구현을 어찌 할지 생각해 보았는데 금방 끝날 수 있는 작업은 아닌것 같습니다. 천천히 생각해 보도록 하겠습니다. --;;

 그리고 이건 개발자 분들에게 도움이 될만한 내용입니다. 위젯 프로바이더의 onReceive()에서 액션을 로그로 남기며 테스트 중에 'mobi.intuitit.android.hpp.ACTION_READY' 이라는 액션에 자꾸 들어오더군요. 구글링을 해보니.. 보통의 안드로이드 바탕화면(홈 어플)은 특정 폴더나 리스트 또는 위젯에 스크롤 기능을 지원하지 않습니다. 헌대 어느 그룹에서 그 스크롤을 가능하게끔 해주는 라이브러리를 만들어서 오픈소스화 했더군요. 런처프로를 비롯한 ADW 등 많은 어플이 해당 라이브러리를 쓰고 있었습니다. 저게 바로 홈 어플에 의해 바탕화면이 새로고침 될 때 위젯의 데이터를 날려버리는 원인 이였습니다. --;; 위젯 어플을 만드시는 분들이 많지는 않겠지만.. 참고하시길 바랍니다 ㅠㅠ 위젯은 최대한 간단하게, 간결하게, 복잡하지 않게 만드는게 최고예요 ㅠㅠ 안그러면 유지보수가 너무너무 힘듭니다 --;

 개인적으로 안드로이드의 특성을 가장 잘 살리면서 구글이 제시한 어플의 기준을 가장 잘 지킨 앱은 서울버스라고 생각합니다. 아이폰의 서울버스는 잠깐 사용해 봤는데 안드로이드 버전을 보니 비슷한거 같으면서도 참 잘 만드셨더군요. 개발자 분의 어플에 대한 열정도 잘 느낄 수 있고, 실력도 있으시고.. 중요한건 제가 정말 많이 사용합니다. ^^;;;; 쓰다보면 세세하게 신경쓴 흔적들에 놀라게 됩니다. --b 위젯을 갖는 어플 중 최고는 무료통화조회 라고 생각합니다. 그 단순한 위젯을 가지고 정말 수 많은 것들을 자세히 설정 할 수 있으며, 개발자분의 대응도 빠르고 꼭 필요하기도 하고.. 최고죠~~


 원기날씨를 공개한지 어느덧 두달째 입니다. 별 부담없이 마켓에 업로드 했는데 두달 동안 업데이트 하면서 부담이 저절로 생기더군요. 그 사이에 마켓의 뉴스와 날씨 카테고리가 분리되기도 하고 이제는 다운로드수 십만이 다되갑니다. 엄살아닌 엄살을 떨어 보자면 제 어플은 무료이고 광고조차 넣지 않았습니다. 금전적인 부분이야 공모전 상금이 있으니 욕심부리지 않고, 그냥 내 이름을 넣은 어플이니 잘 해보자 라는 생각으로 시작한 일인데 뭐가 맘에 안드네 이게 안돼네 저게 안돼네 라며 별 하나두개 던져 주시면 정말 개발 의욕이 팍팍 떨어집니다. --;; 무료고 광고도 없는데 제가 볼껀 그저 평점뿐이 없습니다. 평점 하나 둘 셋...넷..... 주신분들... 다시 한 번 잘 생각해주세요 *^^*

 신묘년 새해, 하시는일 다 잘 풀리시고 뜻한바 모두 이루시길 바랍니다. 새해 복 많이 받으세요! _(__)_


** 추가
v1.2.1
 일부 기종에서 어플을 내장메모리에 설치 하였음에도 오류가 생기는 것으로 추정되는 부분을 수정하였습니다. 일단 제가 테스트 기기로 사용하는 폰은 잘 돌아가므로 --;; 정확한 원인 파악이 되지는 않으나 보내주신 에러로그를 보고 원인이 발생하는 것으로 예상되는 부분을 수정했습니다. 실행이 안돼시던 분들은 새로 받으셔서 설치해 보시기 바랍니다.

v.1.2.2
 경남 진주시 금산면의 현재 온도가 다른 지역의 온도로 표기하던것을 수정하였습니다.

,