본문 바로가기

일상

구글 플레이 콘솔 관리형 게시로 심사 통과와 공개 시점 떼어 놓기 (트랙 상태 completed 인데 스토어에 없는 이유)

반응형

플레이 콘솔에 앱 업데이트를 올렸는데 언제 공개될지 몰라 서버 배포 시점을 못 정하거나, API 로 본 트랙 상태는 completed 인데 스토어에는 앱이 안 보일 때, 관리형 게시로 공개 시점을 직접 정하는 방법입니다.


개인 게임 앱을 처음 플레이스토어에 낼 때, 심사를 보내 놓고 플레이 개발자 API 로 프로덕션 트랙을 읽어 보니 상태가 completed 였습니다. 출시가 끝난 줄 알았는데 스토어 주소를 열어 보니 404 였고, 다음 날 다시 보니 이미 공개돼 있었는데 그 전날 오후에 공개됐다는 것도 그때 알았습니다.


- API 의 트랙 상태 completed 는 출시 설정을 마쳤다는 뜻이지 심사를 통과해 공개됐다는 뜻이 아니다

- 공개 여부는 스토어 상세 페이지가 200 으로 열리는지로 확인하는 게 확실하다

- 관리형 게시를 켜면 승인돼도 바로 나가지 않고 기다리니, 서버와 앱을 같은 날 맞춰 내보낼 수 있다


1. completed 인데 스토어에는 없다

플레이 개발자 API(androidpublisher v3)에서 트랙을 읽으려면 edit 을 하나 만들고 edits.tracks 를 조회한 뒤 edit 을 지우면 됩니다. 읽기만 하고 커밋하지 않으니 콘솔에는 아무 변화가 없습니다.



여기서 release 의 status 가 completed 로 나와도, 그건 이 트랙에 그 버전을 전체 출시하도록 설정했다는 뜻입니다. 구글 심사가 끝났는지는 이 값으로 알 수 없어서, 실제로는 심사 중이었는데 출시된 것으로 잘못 읽었습니다.


그래서 공개 여부는 바깥에서 확인하는 게 확실합니다. play.google.com/store/apps/details?id=패키지명 을 열어 404 면 아직 공개 전이고 200 이면 공개된 것인데, 이 앱은 심사 중일 때 404 였다가 공개 뒤에 200 으로 바뀌었습니다.


2. 관리형 게시가 꺼져 있으면 승인 즉시 공개된다

관리형 게시가 꺼져 있으면, 심사를 통과한 변경사항은 따로 누르지 않아도 그 자리에서 바로 공개됩니다. 첫 출시 때가 그랬는데, 승인이 언제 날지 모르니 공개 시점도 내가 정할 수 없었고 공개된 뒤에야 알았습니다.


첫 출시는 그래도 괜찮았지만, 업데이트는 사정이 다릅니다. 이 앱은 서버가 게임 진행을 다시 계산해 확인하는 구조라 새 앱과 새 서버의 규칙이 같이 바뀌는데, 새 앱이 서버보다 먼저 나가면 옛 서버와 규칙이 어긋납니다.


3. 관리형 게시를 켜면 달라지는 것

구글 도움말에 따르면 관리형 게시는 플레이 콘솔의 게시 개요 페이지에서 켭니다. 켜 두면 심사를 통과한 변경사항이 바로 나가지 않고 게시 준비가 된 상태로 기다렸다가, 직접 게시를 눌러야 공개됩니다.


붙잡아 두는 대상은 프로덕션의 전체 출시와 단계적 출시, 스토어 등록정보, 앱 콘텐츠 변경 같은 대부분의 변경사항입니다. 다만 인앱 상품과 가격 변경, 단계적 출시 비율을 100% 로 올리는 것 등은 예외로 바로 반영되고 내부 테스트 트랙도 대상이 아니니, 상품 쪽 변경은 따로 시점을 챙겨야 합니다.


4. 서버와 앱을 같은 날 내보내는 순서

다음 업데이트는 이 순서로 내보내기로 정해 두었습니다. 핵심은 심사를 미리 받아 두고, 공개 버튼은 서버 배포가 끝난 뒤에 누르는 것입니다.



심사가 며칠 걸리든 서버 일정과 상관없이 미리 보내 둘 수 있고, 공개는 점검 시간 안에서 서버를 올린 직후에 하게 됩니다. 플레이는 공개한 버전을 이전 버전으로 되돌리는 기능이 없어서, 공개 순서를 지키는 게 사고를 막는 가장 확실한 방법입니다.


5. 정리

플레이 개발자 API 의 트랙 상태 completed 는 공개 여부를 말해 주지 않으니, 공개 확인은 스토어 상세 페이지가 200 으로 열리는지로 하는 편이 확실했습니다. 그리고 서버와 앱이 같이 바뀌는 업데이트라면 관리형 게시를 켜 두고 승인과 공개를 떼어 놓아야, 공개 시점을 서버 배포에 맞출 수 있습니다.


여기까지 구글 플레이 콘솔 관리형 게시와 트랙 상태 completed 에 대해서 작성해봤습니다. 여기까지 읽어주셔서 감사합니다!

반응형