BLOG ARTICLE 스모킹 카운터 | 2 ARTICLE FOUND

  1. 2009.04.30 아이폰 App - Action Counter (26)
  2. 2009.03.18 스모킹 카운터 1.2 버그

이전에 만들었던 스모킹 카운터의 소스를 복사해서 간단한 카운팅 어플을 만들어서 앱스토어에 등록했습니다. 어제 저녁에 올렸으니 아직 리뷰중입니다. 판매의 의도 보다는 cocos2d나 한번 써볼려고 만든 어플인데 디자인만 입혀서 올려 보았습니다.

+ 버튼을 눌러 어떤 행동에 대한 카운팅을 하는것이 주목적이고 카운팅 숫자 만큼 돼지가 화면에 나타납니다. 드래그할 수 있고 높은 곳에서 떨어뜨릴 수가 있고 해를 눌러 정렬, 렌덤, 점프등 간단한 명령을 내릴 수 있습니다. 그외에 시간 간격이나 일/월/년별 통계를 볼 수 있고요. 하지만 별 쓸데가 없는 어플이라 저도 안쓸 것 같습니다.

사실은 이것보다 아이폰 어플 소개를 위한 동영상 플레이어를 만들어 보고 싶은데요. 아래와 같이 대부분의 플레이어는 가로로 보여주기 때문에 제대로 보이지 않기 때문에, 어플 고유의 해상도로 아이폰 스킨을 적용한 플레이어를 만들어 볼려고 생각하고 있습니다. 게을러서 늘 마음만 먹고 있었지만 일단 어플을 올렸으니 리뷰까지 7~10일정도내에는 만들겠죠.



저도 공부도 할겸 테스트용으로 만들은 소스지만 UI, cocos2d, sqlite3등 처음하시는 분들에게 도움이 될수도 있을 것 같아 공개하기로 했습니다. 역시나 급조한 소스라 부끄럽긴 하지만 취미로 쉬엄쉬엄 하는 cocoa 프로그래밍에 익숙해져 그나마 덜 부끄럽게 소스를 공개하기는 하세월일 것 같아 그냥 감행했습니다.

별것 아닌 소스지만 아래의 사항은 꼭 지켜주셨으면 좋겠습니다.

  • 이미지 파일과 디자인은 테스트 용도 이외에는 사용하실 수 없습니다.
  • 소스는 어떠한 제약도 없으며 디자인만 변경하여 Action Counter Pro로 올리셔도 상관 없습니다.
  • 소스파일은 퍼가거나 링크를 하실 수는 없습니다.
  • 저도 도움이 되고 다른 분들도 알아야 되니 오류가 있을경우 알려 주시면 감사하겠습니다.
  • 소스에 대한 질문과 설계, 네이밍등 코드에 관한 논평은 받지 않겠습니다. 저도 알고 있으니 그냥 삭제하시기 바랍니다.

아래는 프로젝트를 압축한 파일이며 다운로드 받으셔서 사용하시면 됩니다. cocos2d 링크가 제 환경으로 되어 있으니 이 부분은 각자의 환경에 맞게 수정하셔서 빌드하시면 될 것 같습니다. cocos2d 설정은 제 이전 포스트를 참고하시고요.



'App Store' 카테고리의 다른 글

앱스토어에 대한 소고 - 2  (10) 2009.05.09
사전 어플리케이션  (0) 2009.05.01
아이폰 App - Action Counter  (26) 2009.04.30
스모킹 카운터 1.2 버그  (0) 2009.03.18
Smoking Counter 등록 완료  (64) 2009.03.03
제 계정으로 처음 어플리케이션을 등록했습니다  (28) 2009.02.26

저번 주에 1.2 버젼을 올렸습니다. 통계에 섬머타임이 적용된 버그등을 수정하고 캐릭터 에니메이션을 추가하고 디자인을 조금 변경하였습니다.

어제 1.2 버젼이 리뷰를 끝내고 배포가 되었습니다. 그런데 어플 업로드시 공식 사이트로 등록해 놓은 블로그에 아이팟 터치 1세대 사용자께서 어플리케이션이 멈춘다는 글을 보았습니다. 혹시나 해서 앱스토어를 가보니 업그레이드 후 튕긴다는 리뷰를 보았습니다. 일단 더 이상 다운로드되는 것을 막기위해 스토어에서 내렸습니다.

제가 파악한 범위에서는 1세대 사용자에게서 문제가 발생하는데, 제가 1세대가 없고 늦은 시간이였기 때문에, 1세대를 가지고 있는 지인에게 연락하여 다음날 가져와 달라고 요청했습니다. 원인은 늘 그렇듯이 어처구니 없는 실수였습니다.

sqlite3_finalize(statement);
sqlite3_finalize(statement);

디버깅 하다보니 위와 같은 코드가 있더군요. 아마 복사를 하다 필요없는 sqlite3_finalize까지 같이 가지고 왔나 봅니다. 이 치명적인 오류는 해킹된 아이팟 1세대만 튕기고 나머지 시뮬레이터나 2세대에서는 견딘 것 같습니다.

두번째 어플리케이션이 멈추는 듯한 문제는 지나치게 느려진 속도에 있었습니다. 메인화면은 2개의 View로 나누어 놓았습니다. 상단은 에니메이션이 필요하고 추후에 다양한 에니메이션을 보여 주기위해 Open GL ES를 사용하기 위함이고, 하단의 수량, 시간등을 보여 주는 부분은 매 프레임 마다 에니메이션이 필요 없기 때문이었습니다. 그런데 이번에 업글을 하면서 하단의 뷰도 매 프레임 실행되도록 변경했습니다. 제 2세대에서는 아무 차이가 없었기 때문이었습니다. 하지만 1세대에서는 속도에 심각한 문제가 발생했습니다. 아마 애플도 리뷰시 2시대만 사용하는 것 같습니다.

현재는 이미지 출력시에 가장 간단한 방법인 drawAtPoint를 사용하고 있었습니다. 애니메이션이 더 추가되고 GL로 가기전에 그나마 퍼포먼스가 조금 나은 CGContextDrawImage로 교체할려고 합니다.

아무튼 오류를 고치고 그날 핀 수량을 뱃지로 보여주는 부분을 추가하여 다시 올렸습니다. 아마 다음주 초쯤 올라갈 것 같네요. 사용하고 계신분들께는 너무 죄송합니다.