이상을 꿈꾸는 몽상가.. 프로그래밍을 좋아함..


Perfect Trainer for PokemonGo 포켓몬고

Perfect Trainer 망나뇽

Perfect Trainer라는 Android 앱을 만들었습니다.

포켓몬고(PokemonGo) 사용자들을 위한 앱으로
앱을 설치만 해두면 주변에 전설급 포켓몬이 나타나면 실시간으로 알려줍니다.

개발과정에 대한 설명보다는
앱 소개와 Google Play에 초기버전을 배포하고 난 뒤에 겪은 일들을 기록해봅니다.

무슨 앱이지?

포켓몬고는 너무 빡세

Pokemon Go를 2~3일 하다보니
“시간 투자를 엄청나게 해야하는 게임이구나..” 라는 생각이 들었습니다.

트레이너의 레벨 올리는데도 시간이 엄청나게 들어가고
갸라도스 같은 강력한 포켓몬으로 진화시키려면 잉어킹을 100마리 이상은 잡아야 되다니..
그리고 잉어킹이 아무대서나 나오는 것도 아니고
선유도 같은 곳을 가야 많이 만날 수 있으니 직장인인 나는 주말을 투자해야한다는 결론이 나왔습니다.

게다가 갸라도스를 만들었으면 이제 미뇽을 잡아서 망나뇽도 만들어야하고.. ㅋ
“끝이 없겠구나..” 라는 생각이 들었죠.

근데 우연히 사무실 근처에서 망나뇽을 잡는 일이 생겼고
“아.. 굳이 한마리 한마리 잡아나갈 필요는 없겠네” 라는 생각이 들더군요.

Perfect Trainer 가 되어보자

Perfect Trainer를 설치하시고
앱은 꺼둔채로 일상생활을 하시면 됩니다.

아시나요?
망나뇽, 잠만보 같은 전설급 포켓몬이
우리 주변에 굉장히 많이 나타났다가 사라지고 있다는 사실을..?!

맨날 포켓몬고만 들여다 볼 순 없으니 우리는 그 사실 조차 알 수가 없습니다.

일상에 집중하세요. 하지만 전설은 놓치지 마세요.


예를들어
주변에 망나뇽이 나타나면 진동과 푸쉬로 알림을 줍니다.
알림을 받으신 후 Perfect Trainer 앱을 켜면
망나뇽의 IV, 나와의 거리, 남은시간을 확인 할 수 있습니다.
그리고 OPEN_MAP 버튼을 누르면 자신(파란표시)과 망나뇽(빨간표시)의 위치를 구글맵에서 확인할 수 있습니다.

이제 두 다리로 달려가서 포켓몬고를 켜고 망나뇽을 잡으시기만 하면 됩니다.

망나뇽 발견 망나뇽 위치


평소에는 일상에 집중하다가
알림이 오면 잠깐 달려나가서 전설급 포켓몬을 잡기만 하면 됩니다.

일도 가끔씩 쉬어가면서 할 필요가 있습니다. 잠깐 굳은 어깨, 붓는 다리를 풀겸 10분 산책하세요 ㅋ

일상을 놓치지 않으면서도 퍼펙트 트레이너가 되실수 있습니다.

사용법

Wanted Page 포켓몬 선택 Page

“Wanted” 페이지에서 오른쪽 아래 +표시의 동그라미를 누르면 “포켓몬 선택” 페이지로 이동합니다.
“포켓몬 선택” 페이지는 잡고싶은 전설급 포켓몬을 선택할 수 있는 페이지입니다.
원하는 포켓몬을 터치하시고 알림받고 싶은 거리, IV 정보를 입력 후에 SAVE 해주시면 됩니다.

선택한 포켓몬들은 “Wanted” 페이지에 보여집니다.
앱을 설치하면 처음부터 “Wanted” 페이지에 7개 정도의 몬스터가 등록되어있을 텐데
그건 제가 임의로 등록해둔 겁니다. 지우셔도 되고 더 추가하셔도 되요 ^^

포켓몬고 팁

상암동

다니는 회사의 사무실이 상암동에 있습니다.
은근히 상암동은 망나뇽이 자주 나오는 지역입니다.

집 근처에서도 망나뇽에 대한 알림을 받은 적이 많지만
상암동 만큼은 아닌 것 같아요 ㅎ

갸라도스는 선유도

갸라도스는 지금까지 알림을 딱 한번 받았습니다.

아마도 한강 근처에서나 자주 나타날 것으로 예상되는데
제 생활패턴상 한강은 주말에 잠깐 가는 것 뿐이니까요 ㅎ

알림을 받은 그 한번도 선유도에서 받았답니다.
다만 강 건너편에서 발견되서 포기했었다는..ㅜㅡ


그래도 갸라도스는 선유도로 가면 그나마 쉽게 만들 수 있습니다.

잉어킹 구슬 400개를 모아야하지만 선유도가 잉어킹 밭이거든요 ㅋ
게다가 포켓스탑이 5개가 모여있어서 볼도 계속 공급 받을 수 있고요.

가보시면 수 많은 사람들이 포켓몬고를 하고 있어서
모든 포켓스탑에 항상 루어모듈이 돌아가고 있을 거예요 ㅋ

선유도


제가 잡은 S급 잉어킹과 진화시켜서 만든 갸라도스입니다 ㅋ

잉어킹 갸라도스

어린이대공원

어린이 대공원

어린이 대공원 옆을 지나가다가 포켓몬고를 켜봤습니다.
어린이 대공원 안에 포켓스탑의 개수가 엄청 나더군요 ㅋ

끝없는 스탑과 몬스터들이 있을테니 레벨업 하기 좋은 곳 같습니다 ㅋ

행복의 알

“행복의 알”을 쓰면 30분간 경험치를 2배 줍니다.

그래서 평소에 진화시키지 말고 몬스터 구슬을 모으고 모아서 “행복의 알”을 쓴 후에 한꺼번에 진화시킵니다 ㅋ
진화할 때 경험치를 대략 500xp 받는데 2배를 받으니 1,000xp을 받게 되는거죠.

그리고 진화 된 몬스터가 잡은 적이 없던 거라면
도감에 새로 등록되면서 500xp를 주는데 이것도 2배되서 1,000xp를 받게 됩니다.

하나 더..
매일 포켓스탑을 돌리고 몬스터를 잡으면
7일 째 되는날 포켓스탑 돌리면 대략 2,500xp, 몬스터를 잡으면 2,500xp 준다는 것을 아시나요?

7일째 되는 날 행복의 알을 쓴 채로 포켓스탑을 돌리고 몬스터를 잡으면
5,000xp의 두배인 10,000xp를 받을 수 있습니다.

지난 번에 행복의 알을 쓴 채로 포켓스탑 돌리고 몬스터 1마리 잡고 대략 80개정도 진화시켰더니 85,000xp를 받았습니다.
레벨 21이 되자마자 22 되더군요 ㅋ

아.. 참고로 몬스터가 250마리 정도 꽉차면 진화시킬 몇마리만 놔두고 전부 박사에게 보내고 구슬만 모으면 됩니다.
저는 250마리 잡고 정리하고 250마리 잡고 정리하고.. 이렇게 두번 정리한 다음에 행복의 알을 썼습니다.

퍼펙트 트레이너

Perfect Trainer

더 이상의 설명은 생략합니다. 설치하세요 ㅋ

Google Play에서 “Perfect Trainer”, “퍼펙트 트레이너” 로 검색하셔도 되고
“망나뇽”, “잠만보”로 검색하셔도 상위에 노출됩니다 ㅋ

아직은 “포켓몬고”, “PokemonGo” 로 검색하시면 스크롤 엄청 내려야해요…

잘 검색 될 수 있도록 별점 좀 부탁드립니다 ㅋ

혹시 앱이 너무 좋아서 친구들에게 설치하라고 추천해 주실 때는
“망나뇽” 이라는 검색어가 제일 편할듯합니다 ㅋ

망나뇽

제가 잡은 망나뇽 6마리입니다. CP는 낮습니다.
IV 80%이상이 두개있는데 강화를 시킬까하다가 S급을 기다리고 있는 중이예요 ㅋ
잡으러 갔는데 망나뇽이 도망가는 경우가 많아서..ㅜㅡ 조만간 9마리 꽉 채우면 다시 올릴게요 ㅋ

앱 배포 후 경험

앱 정지 당하다..

앱을 정식으로 배포하고 난 다음날..
Google Play에서 앱을 정지시켰다는 메일을 받았었습니다.

세가지 이유가 있었는데
첫번째는 앱 이름을 “Perfect Trainer for 포켓몬고” 로 했었는데 포켓몬고 앱의 이름을 사칭했다는 이유였고
두번째는 앱 logo가 포켓몬고 logo와 너무 유사하다는 이유였고
세번째는 앱 내에 포켓몬 이미지들이 저작권 문제가 될 수 있다는 이유였습니다.

그래서 앱 이름에서 “for 포켓몬고” 를 빼고 앱 logo도 바꾸고.. 앱 내의 포켓몬 이미지들도 다 제거했습니다.

이게 처음에 사용했던 로고입니다. 돈 주고 산거였는데..ㅜㅡ

Perfect Trainer

그리고 이미지 지우기 전의 앱 화면입니다.

Wanted2 포켓몬 선택2


경고 없이 바로 정지 됩니다. Play Google에서 검색이 안되고 구글 콘솔에서 프로젝트를 열어보지 못합니다.
그리고 그 다음날인가부터 광고도 출력 안되는 것 같더라고요 ㅋ

맨 처음에는 앱 이름에 문제가 있다는 연락만 와서 앱 이름만 바꾸면 되겠구나 했는데
구글 콘솔에 못들어가니까 앱 이름도 바꿀수가 없습니다.

구글 플레이에 앱 이름 바꿀테니 정지를 풀어달라고 요청을 했습니다.

그랬더니 앱 이름만 문제있는게 아니고 logo, 이미지 저작권 문제가 있다고 추가적인 메일이 왔습니다.
그 대신 콘솔에서 프로젝트를 열어 볼 수 있고 변경 가능하게 해주더군요.

아마도 1차적으로 정지시킨 것은 bot이 한 것 같고
개발자가 항의를 하면 사람이 확인을 하고 답을 주는 것 같습니다.

정지 풀어달라고 요청하고 답변이 오는데 2일정도 걸렸고
logo 만들고 앱에서 이미지 제거한 후 apk를 다시 올렸더니 하루 정도 걸려서 정지가 풀렸습니다.

거의 4~5일정도 정지상태로 있었던 것 같네요 ㅎ

앱 홍보

선유도

선유도를 가려고 집을 나서려는 순간..
갑자기 “앱 홍보를 해야겠다” 라는 생각이 들어서
간단한 홍보물을 만들고 PC방가서 인쇄하고 문방구가서 10장 복사를 했습니다.. 헉헉..

홍보1

그리고 선유도에가서 포켓스탑 근처에 붙여놨다는….;;;
물론 2~3시간 후에 다 떼고 왔습니다. 저는 문화시민이 되길 위해 노력하니까요 ㅋ

그렇게 총 3번정도 선유도에서 홍보했었네요.

Blind

Blind 라는 직장인 익명 앱이 있습니다.

거기에 두 번 홍보글을 올렸네요. 원래는 한 번만 올리려고했는데..
올린 다음날 탄핵이라는 희소식과 함께 제 홍보글이 저~~ 아래로 깔려버려서.. 몇일 뒤 다시 올렸다는.. ㅋ

베터리 이슈

앱을 배포하고 초창기에는 베터리 소모가 굉장히 심했습니다.

처음에 개발할때 위치정보를 읽어오는 모듈을 잘못 이해하고 만든게 원인이었죠.
근데 원인을 다른 모듈로 짚고 큰 효과없는 베터리 최적화 작업을 일주일 넘게 했던 것 같습니다.

그 결과 앱은 계속 베터리 최적화라고 업데이트 되는데
일주일 넘게 베터리 광탈 현상은 유지되었죠…. OTL

당시에 제 지인들의 소개나
선유도에서 홍보물을 보고 설치하셨던 분들은..
베터리 광탈에 깜짝 놀랐을 것 같아요 ㅋ

만약 이 글을 보신다면 죄송하다고 말씀드리고 싶네요.

지금은 원인을 찾아서 해결했습니다.
아주 만족하실 정도로 적은 양의 베터리를 사용할 겁니다 ^^


Associated Posts

관련된 주제를 살펴볼 수 있도록 동일한 Tag를 가진 글들을 모아뒀습니다. 제목을 눌러주세요.

  • Setting Android Studio


    AndroidStudio
    ( 이미지 출처 : https://developer.android.com/ )

    이 글은 Ubuntu 환경에서 Android Studio를 설치하고 설정하는 방법을 설명합니다.
    특히 기존에 Google Play에 등록해둔 앱을 새로운 Ubuntu & Android Studio 환경에서 개발하기 위해 개발환경을 구축하는 분들을 위한 글입니다.
    Android 앱 개발에 대한 내용은 다루지 않습니다.


  • Android 앱 설치 / 업데이트 이벤트 처리


    Android Logo
    (이미지 출처 : https://developer.android.com)

    Google Play와 같은 스토어를 통해서 앱이 설치 / 업데이트 되었을 때, 그 이벤트를 알림받고 처리하는 방법에 대해서 설명합니다.

    그리고 특정 앱의 이벤트만 알람을 받는 방법도 알아보고 관련해서 제가 겪은 당혹스러운 사건도 적어보겠습니다.

    업데이트 이벤트 처리는 인터넷 검색하면 쉽게 찾을 수 있는 정보지만,
    검색된 내용대로 따라서 코딩하다보면 개발 당시에는 문제를 못느끼다가
    앱 공개 후 저와 비슷한 경험을 하게 될 것 같아서 글을 작성합니다.


  • SonarQube 로 Android 소스코드 분석하기


    SonarQube Logo Android Logo
    (이미지 출처 : https://www.sonarqube.org, https://developer.android.com)

    Android 소스를 SonarQube를 통해서 정적분석을 하는 방법을 설명합니다.


  • 모바일 앱 테스트 팁 - 운영, 개발 서버 스위칭



  • Test Methods Of Android



  • Android Studio



i