앱스토어 배포 거절 대응기

이승우·2024년 5월 27일

이번 프로젝트의 마무리 단계였던 앱스토어 배포를 하면서 거절당했던 이유들에 대해 포스팅을 해보려고 한다.
첫 시도가 5월 20일 저녁이었고, 배포 성공이 5월 27일 아침이었으니 정확히 일주일 정도 걸렸다.

생각해보면 처음이라 좀 헤맸던 것 같고, 다음에 할 기회가 생긴다면 좀 더 빠른 시간안에 할 수 있을 것 같다.

Guideline 2.1 - Performance

로그인 버튼을 눌러도 다음으로 진행하지 못한다는 것인데..
똑같은 환경, 조건에서 테스트를 해봐도 난 저 현상이 발생하지 않았고 하루동안 알아낸 것은

애플은 ipv6 only 환경에서도 동작하는 앱을 원한다는 것이다.

애플은 왜 ipv6를 원할까?
-> ipv4가 등장할 당시에는 이렇게 인터넷이 발전할 줄 몰랐고, 약 40억개만의 ip주소만 감당할 수 있도록 설계가 되었다고 한다.
-> 애플은 머지않아 ip주소 부족사태가 발생할 것이라 생각하기 때문에 이에 대한 예방책으로 ipv6 only 환경에서 동작하는 앱을 원하는 것이다.

급하게 ec2의 ipv6 주소를 할당받고 ipv6트래픽을 허용해주니, 이 문제는 해결되었다.
말로 쓰니까 정말 간단해 보이는데 테스트하기도 어려워서 정말 오래 걸렸다....

Guideline 1.2 - Safety - User Generated Content

우리 앱에 유저가 생성할 수 있는 컨텐츠가 있는데, 어뷰징 유저나 악질 유저를 조치하기 위한 절차가 없다.
즉 신고기능이 없다는 것이다.

정말 내가 멍청했다는 생각이 들었다.
배포가 쉽지 않을거라고만 생각을 했고 뭘 신경써야 하는지는 찾아보지 않았다.

유저, 미팅을 상대로 신고할 수 있게 기능을 추가했고, 신고기능은 24시간 내에 운영진이 모니터링 후 조치를 취한다고 알렸다.

그리고 컨텐츠를 만들 때 placeholder에 주의문구를 넣었고, 채팅이 시작될 때 또한 주의문구를 추가했다.

그리고 재심사를 요청했는데 똑같은 이유로 리젝을 먹었다.

이제 요구하는 것이 5개에서 1개로 줄었다.

각각의 유저가 어뷰징 유저를 차단할 수 있는 기능을 만들어라.

신고기능으로는 부족했던 건가? 해서 찾아봤더니 차단기능을 또 따로 만들어야 한다더라.
신고기능 -> 운영진이 모니터링 후 조치
차단기능 -> 각각의 유저가 맘에 안드는 유저를 차단.(차단한 유저의 메시지, 컨텐츠를 영구적으로 볼 수 없음)

이렇게 두 기능을 완전히 다르게 분리해서 추가해야 한다는 것이다.

차단기능을 추가해야 했는데 어떻게 구현할까 좀 많이 고민했다.
우리 앱의 제일 중요한 기능은 채팅인데, 차단한 사람의 메시지는 받아볼 수 없게 해야했다.

  1. 채팅방 안에서 받는 방법
  2. notifee(앱 알림)로 받는 방법
  3. 푸시알림으로 받는 방법

이 세가지 상황에서 필터링해서 보여줘야했다.

  • 채팅방 안에서 차단한 유저의 메시지를 필터링하는 방법은 간단하게 생각했다.
    각각의 유저에게 보내는 게 아니라 채팅방에 메시지를 publish하는 방식이기 때문에 클라이언트에서 채팅방에 입장할 때 자신이 차단한 유저의 목록을 받고, 차단한 유저의 메시지가 오면 표시하지 않는 방법으로 구현했다.
    또한, 차단한 이전의 메시지는 보여야했고 차단한 이후의 메시지만 필터링해야했기에, Block테이블에 createdAt 필드를 추가해 채팅방에 입장해 메시지목록을 불러올 때 필터링했다.
  • 알림으로 띄우는 메시지는 일단은 서버에서 필터링해서 각각의 유저에게 publish하는 방식으로 구현했다. 이 방법은 좀 비효율적인 것 같고, 푸시알림을 띄우기 전에 확인하는 방법이 있는지 확인 후 개선해야겠다.

이렇게 두가지를 수정했더니 통과했다.
비정상 종료가 있거나 완성도가 떨어지면 거절당한다는 글도 본적이 있는데 우리는 아니라 참 다행이었다...

앱 출시에 대해 정말 무지했고 서비스 출시까지 하는 한 사이클을 경험한 것 같아 뿌듯했다.
이제 앱 홍보도 하고, 모니터링 하면서 개선, 운영하는 경험을 쌓고싶다. 유저가 있을런지는 모르겠지만ㅠ

최종 결과물
https://apps.apple.com/app/glomeet/id6502836378

야호

0개의 댓글