Playstore, AppStore 등록 후기

JhoonP·2022년 11월 6일
0

그 동안은 이미 올려진 앱을 Playstore에 업데이트 하는 정도의 작업만 해보다가 이번에 처음으로 앱을 런칭할 기회가 생겼다.
업데이트 자체는 거의 하루도 걸리지 않는 수준으로 진행해주어서(유지보수 작업이다보니 내용 자체가 별게 없었던것도 있지만) 런칭도 크게 어렵지는 않을 것이라 생각했다.

그러나 그것은 내 크나큰 착각이고 불행의 시작이었음을 몰랐다.

Playstore

내부 테스트

Playstore에는 내부 테스트 기능을 제공한다.
내부 테스트는 특정 사용자 그룹에게만 앱을 배포하고자 할 때 사용할 수 있는 기능으로,
테스터는 APK 파일로 직접 앱을 설치하는 수고 없이 Playstore에서 제공하는 링크를 사용하여 앱을 다운로드, 업데이트까지 할 수 있다.

업데이트 기능을 제공해주고, Google Play Console에 익숙해질 필요도 있었던 나는 해당 기능을 사용하여 QA앱을 배포했었고, 이 때까지는 큰 문제가 없었다.
하지만 프로모션 배포 당시 큰 발목을 잡게 되었다.

권한 삭제와의 싸움

모든 준비가 끝나고, 배포만 남았다. 호기롭게 심사 요청을 보낸 나는 일단 바로 1차 리젝을 먹었다.
로그인이 필요한 앱이었지만 웹서비스를 통한 회원가입 기능도 있어 회원가입 후 사용할 줄 알았으나 역시나 로그인 정보 제공이 필요했고, 앱 액세스 권한에 로그인 정보를 추가하여 재심사를 요청했다.
그렇게 해당 문제가 해결되고 정상적으로 런칭될 줄 알았으나...

REQUEST_INSTALL_PACKAGES 권한이 포함되었다는 에러가 발생했다.
이전에 다른 프로젝트의 코드를 복사하다가 잠시 포함된 적은 있지만 분명 프로모션에 등록한 앱은 지워서 보냈을텐데??
manifest file 및 모든 코드를 검사하고 실제 앱 설치 후 권한 설정에서도 해당 권한을 요청하지 않는 것을 확인한 나는 바로 이의제기를 보냈고


이런 답변을 받았다.
처음에는 난 권한이 없다는 이의제기를 보냈는데 권한이 있다고 답변을 주다니 도대체 이게 무슨 소리야 싶었는데... 메일을 천천히 읽다보니 공개 테스트 버전: 5가 눈에 들어왔다.

아니 내가 승인 요청한 트랙은 프로모션인데 왜 공개 테스트에 있는 구버전 앱의 문제를 이유로 프로모션 배포를 거부하는거야??

라고 생각했지만
공개 테스트는 어쨋든 public Playstore에 업로드 되는 앱이라 프로모션 트랙이랑 아주 관련이 없진 않겠지... 하고 공개 테스트에 최신 버전 앱을 심사 요청하였다.

하지만 문제는 더 심각했었다. 공개 테스트에서 조차도 또 리젝을 먹은것이다.
리젝에 대한 이의제기에 대한 답변도 위와 똑같은 REQUEST_INSTALL_PACKAGES 이야기였고, 이 때쯤 머리가 터질 것 같은 지경이었다. 이유는 모르겠지 배포 일정은 이것때문에 계속 밀리지...

결국 마지막으로 눈에 들어온 것은 비공개 테스트와 내부 테스트 트랙.
비공개와 내부 트랙에 올라간 앱들은 구버전 앱으로 REQUEST_INSTALL_PACKAGES가 포함되어 있긴 했지만, 얘넨 애초에 public 배포도 아니었고 트랙도 구분되어 있으니까 프로모션 배포랑 상관이 없다고 생각했다.

하지만 남은 의심되는 사항은 얘네밖에 없고, 결국 이 트랙도 최신 버전으로 업데이트를 진행하였다.

진짜 배포

프로모션, 공개, 비공개, 내부 테스트의 오류를 모두 수정, 배포하고 프로모션 트랙의 재심사를 요청하였다.
Playstore의 경우 최장 7일까지 심사 시간이 소요될 수 있다고 말하고 있다.
그렇게 프로모션 배포를 기다리고 있는데... 7일이 지나버렸다.
바로 문의메일을 넣었고 답변은

분명 프로모션 배포를 19일에 진행했는데 웬 24일??
그렇게 24일의 행방을 찾아보니... 내부 테스트 배포를 24일에 진행한 적이 있었다...
검토 중 새로운 버전이 배포되면 기존 검토가 초기화된다는 사실까진 알고있었으나 내부 테스트 배포가 프로모션 배포에 영향을 줄 거라고는 생각도 못했던 것이다.

그렇게 11월 1일까지(9일(영업일 7일 + 휴일 2일)을 꽉 채울줄도 상상을 못했다...) 기다린 끝에 드디어 출시를 할 수 있었다...

AppStore

Playstore의 배포 속도에 경악한 나와 PO님은 이러다가는 난이도가 훨씬 높다는 AppStore는 만년이 걸리겠다고 생각하여 AppStore도 바로 배포 준비를 시작하였다.

AppStore Connect에 필요한 정보들을 기입하고(Playstore 경험이 있어서 로그인 정보 기입 등을 놓치지 않고 진행할 수 있었다) 바로 심사를 요청하였고, 역시나 리젝과 함께 고봉밥 심사결과를 받을 수 있었다.

심사 결과를 요약하자면,

  • 얼굴 데이터
    • 앱에서 얼굴 데이터를 취득하는데 정확히 무슨 데이터를 취득하는지?
    • 취득한 얼굴 데이터를 어디에 어떻게 사용하는지 상세하게 설명
    • 데이터가 공유되는 써드파티가 존재하는지? 있다면 설명
    • 개인정보 보호정책에 얼굴 데이터에 대한 상세한 설명이 없다. 추가하고 추가한 부분을 표시하거나 작성해서 회신해라
  • User Experience
    • 앱에 회원가입 기능이 없다. 매우 나쁜 유저 경험을 주기 때문에 추가해라.
    • 마찬가지로 탈퇴 기능이 없다. 유저에게 탈퇴 기능을 제공하여 데이터를 안전하게 삭제하는 것은 필수다.
  • 카메라 권한 요청 이유에 대한 설명이 부족하다. 더 상세하게 작성해서 추가해라.

얼굴인식을 사용하는 앱이다 보니 얼굴 데이터에 대한 처리에 매우 민감한 것 같다.
또한 회원가입/탈퇴 기능의 경우 추후 추가할 예정이었으나 이것을 리젝 사유로 넣을줄은 상상도 못했다.기획까지 신경써주는 AppStore...

그런데 생각해보니 심사 결과가 영어로 왔어서 회신도 영어로 해야하는지 의문이 생겼다.
어떻게 해야하나 찾다가 유사한 사례를([iOS] 최근 앱스토어 심사 거절을 경험하고..) 찾을 수 있었고, 결론은

개인정보 보호정책과 같은 국가간 다른 관점이 생길 수 있는 정보는 오히려 한글로 써서 보내 한국인이 확인할 수 있도록 하는 것도 방법이다.

그래서 한글, 영어를 함께 표기하여 작성하였다.
그렇게 회원가입/탈퇴 기능 추가하고 요청한 얼굴 데이터 관련 자료들을 넘겼고, 역시 또 리젝을 먹었다.

2차 심사 결과에서는

너네 앱 로고 보니까 BETA라고 써있더라? 우리 AppStore는 pre-release, test or trial version 앱은 허가하지 않는다. Testflight를 사용하렴

1차 심사 때 알려줬으면 좋았을 것을... 어차피 1차 MVP 목표는 달성한 앱이기 때문에 로고를 변경하여 심사를 보냈고,

후기

  • Playstore의 테스트 기능을 이용한건 정식 배포 전 Play Console에 익숙해지기 위함이었는데 이렇게 고생할 줄은 몰랐다...(다시는 안쓰겠다 이 기회에 DeployGate나 공부해야겠다)
  • 규모가 큰 앱이 아니었는데도 불구하고 Playstore는 한 번 심사를 보내면 5~7일은 기본적으로 소요됐지만, AppStore는 비록 거절이 되더라도 모두 하루 만에 심사 결과를 보내주었고,
    결국 Playstore와 AppStore 배포 날짜는 크게 차이가 나지 않았다.
    요구사항은 많지만 적어도 결과처리가 빠른 AppStore가 훨씬 좋은 인상을 주었다.
  • 얼굴인식 기능을 사용하는 다른 앱들의 개인정보 처리방침을 참고하기 위해 여럿 찾아봤는데 AppStore에서 요구한 정보가 있는 곳을 찾을 수가 없었다.
    아마 얼굴인식 기능이 들어가기 전에 앱을 런칭하고 이후 업데이트로 추가해서 심사가 꼼꼼하게 이루지지 않았는데 우리 앱은 처음부터 얼굴인식 기능이 들어가서 꼼꼼히 체크당한건가 싶었다.

아무튼 무사히 Android, iOS 모두 배포를 마칠 수 있었다.

profile
배울게 끝이 없네 끝이 없어

0개의 댓글