[개발일기] iOS 앱 제작 이야기 :)

minimap
minimap.net
Published in
5 min readSep 15, 2017

안녕하세요, 미니맵입니다.

오늘은 미니맵 앱스토어 등록 검수가 통과된 날입니다. (2017/06/02) 라고 써놓고 임시저장 이후 열어보질 않았군요.

경우에 따라 다르지만 한국에서 앱 제작은 안드로이드 플랫폼을 가장 먼저 시도하는 것이 일반적입니다. 일단 점유율 면에서 안드로이드 폰이 압도적이고(아이폰도 6 출시 이후 점유율을 약간 회복하긴 했지만) 테스트 및 마켓에 등록하는 절차 면에서도 안드로이드가 좀 더 용이하기 때문입니다. 일단 이전 게시물에서도 언급했듯이 애플 개발자 등록이 보름 이상 걸린다면, 안드로이드 개발자 등록은 인터넷 쇼핑몰에서 물건 하나 사는 정도의 수고만 들이면 할 수 있습니다. 그 외에도 테스트 기기에 접근하는 방법이라든가, 사람 환장하게 하는 출시 검수라든가… 유저 입장에서 뭔가 깔끔한 것을 좋아한다면 폐쇄적인 iOS가 좋을 수도 있겠으나 개발하는 사람 입장에서는 iOS 대응이 좀 짜증나기는 하죠.

앱 제작의 목적

처음 생각한 앱 제작의 목적은 딱 두가지, 1. 쉬운 접근 2. 푸시 알림으로 인한 재방문 유도입니다.

일단 미니맵은 앱 이전에 웹과 모바일 웹, 두 가지 버전으로 서비스 중입니다. 해상도에 따른 반응형으로 제작되었구요. 통계를 보면 모바일 웹 이용자가 50%를 조금 넘고, 5%정도가 태블릿 이용자 나머지가 PC접속입니다. 수치만 봐도 모바일 앱을 빨리 만들면 좋겠다는 생각이 들죠. 게다가 저희 모바일 웹 레이아웃 자체가 앱을 염두에 두고 만든 것이라, 하단 탭바가 있습니다. 모바일 웹에서 하단 탭바의?문제점은 브라우저 하단 메뉴와 겹친다는 것이죠.

어떻든간에 저희가 앱 개발에 접근하는 자세는 ‘처음부터 거창하게 갈 여력은 없고, 위 두 가지 목적만 충족시킬 수 있으면 일단 괜찮다’는 것이었습니다.

앱 제작 스펙 결정

어떤 스펙으로 앱을 제작할 것인가? 당연히 모든 것이 매끄러운 네이티브 앱으로 만들면 좋았겠지만, 저희 사이트가 아직 초기 단계이고 인력도 부족하기 때문에 앞으로 추가될 기능들을 생각하면 선택하기 힘든 옵션이었습니다. 일반적으로 대응하는 플랫폼을 생각해 보면 1. 웹 2. 모바일 웹 3. iOS 앱 4. 안드로이드 앱 이렇게 4종이 기본 세트가 될텐데요, 특정 기능 추가시마다 4개 플랫폼으로 개발/업데이트 해야 하는 상황이 되는 거죠. 물론 각 개발담당자가 한 명 이상 있다면 모르겠지만요 🙂

물론 걱정되는 부분이 많습니다. 저도 아이폰 유저지만, iOS의 슬릭한 UX에 익숙한 유저들에게 ‘앱을 구동했는데 웹페이지처럼 동작하는’ 경험은 물론 좋지 않을 겁니다. 하지만 빠른 피드백 및 개선을 위해 여러 플랫폼을 짊어지고 가는 것보다는 대응이 쉬운 방법을(아쉽지만) 선택했습니다. 게다가 웹뷰 성능이 Safari나 iOS용 크롬보다 떨어진다는 말에 걱정이 많이 되었지만, 스크롤 프레임이 약간 떨어지는 것 말고는 큰 문제는 없었습니다. 물론 그 ‘약간’의 체감이 사람마다 다를 수는 있겠지만요. 어차피 대안이 없으니 찜찜해하시는 개발자님을 뒤로 하고 그냥 가시죠를 외칩니다.

애플 검수

최초 검수 제출일은 4월 17일이었는데요. 그 뒤로 3번의 거절-_-을 거쳐 검수 통과가 됐습니다. 애플이야 뭐… 익히 겪어서 알고 있기에… 그냥 뭐라고 피드백이 오나 보자는 심정으로 일단 검수를 넣었습니다. 검수 넣을 때 돈이 드는 건 아니니까요!

총 세 번 중 두 번은 beta 문구 때문에 리젝 당했습니다. 앱을 구동했을 때 메인에 ‘미니맵 베타 오픈’이라는 배너가 떡하니 걸려 있었고, 두 번째는 앱 소개 이미지에 해당 배너가 찍힌 스크린샷이 있었다는 이유입니다. 출시 때는 베타를 모두 없앱시다.

To resolve this issue, please remove all references to “demo,” “trial,” “beta,” or “test” in your app description, app icon, screenshots, previews, release notes, and binary.

물론 다행히도 저런 걸 수정하는 건 별 일이 아닙니다. 시간이 간다는 게 문제라면 문제일까. 나머지 하나도 로그인 화면에서 좌->우로 Swipe 했을 때(back) 다시 로그인 화면으로 넘어간다는 게 정책 위반이라 리젝당했구요.

정말 나머지 정책 위반 사항이 있었는지 없었는지는 모를 일이지만 여튼 세 번의 시도 끝에 검수 통과했습니다. 사실 몇 번 더 리젝당할 것도 각오하고 있었는데 무난히 통과돼서 다행이었구요. 그 외에 앱에서 페이지 이동할 때 브라우저처럼 refresh와 back이 작동하지 않기 때문에 수정해야 할 몇 가지를 남겨 둔 채로 배포 대기 상태가 되었습니다.

배포

버그를 수정 후, 배포 빌드는 근 한달을 묵었습니다. 해야지 해야지 하면서 뭔가 이걸로 마케팅을 해야 하나, 이벤트를 해야 하나, 중간에 다른 업데이트 때문에 시간이 없기도 했고 자체적으로 눈치를 보다가 배포가 늦어졌네요. 버튼 한 번 누르면 되는 것인데….

여튼 얼마 전인 8월 22일에 앱스토어에 배포되었고, 5시간 정도 지나자 마켓에서 검색이 되었습니다. 와~

배포 후 버그

배포 이후 들뜬 마음에 후기 이벤트를 할까 어쩌고 저쩌고 혼자 행복회로를 막 돌려보다가 유저분께 제보가 하나 들어옵니다.

‘페이스북 로그인이 안되네요’

왜 이걸 확인을 안했을까.. 빌드수정이 되지 않으면 해결이 안되는 문제라는 제보를 듣고 황급히 대체 공지를 올렸습니다. 페이스북 유저께서는 비밀번호를 설정하시고 어쩌고 저쩌고… 사실 앱 만들어주신 개발자분께서 새벽5시에_퇴근하시는_IT인의_참혹한_현실.mp4 를 최근 보여주고 계신지라 바로 수정은 될 수 없는 상황.

다음 목표는 동일한 방식으로 안드로이드 버전을 만드는 것이고 나머지 부분은 얼른 목표했던 미니맵의 스펙에 도달하는 것을 우선으로 생각하고 있습니다.

미진한 부분이 많지만 항상 아껴주시는 미니맵 유저분들께 깊은 감사 올립니다.

Originally published at http://blog.minimap.net on September 15, 2017.

--

--