이 글은 애플 앱스토어(App Store)에 앱을 제출하는 과정에서
네 번째, 다섯 번째 reject를 연속으로 겪으며
심사관이 지적한 문제들을 하나씩 해결해 나간 실제 경험을 정리한 기록이다.

특히 앱 추적 권한(ATT) 요청 문제,
카메라 접근 권한 거부 시 발생한 무한 로딩 오류,
iPad landscape 화면에서 발생한 레이아웃 문제까지
초보 앱 개발자가 놓치기 쉬운 오류들을 중심으로 정리했다.

 

이 글은 이전에 작성했던
두 번째 reject, 세 번째 reject 경험담에 이어지는 내용이다.

https://myuslifejournal.tistory.com/127

 

앱 개발, 세 번째 reject: 추적 권한 요청 추가 및 디자인 수정 요청

지난 글 (https://myuslifejournal.tistory.com/125)에 이어서. 두번째 reject: In-App Purchase 무한로딩에 관한 수정 요청지난번에는 in-app purchase 요소가 있다는 것을 일부 부분에 체크해서 넣지 않아서 검증을 할

myuslifejournal.tistory.com

 

## App Store 심사에서 지적된 추적 권한(ATT) 문제

지난번에 추적 권한 미요청(가이드라인 2.1)에 관하여, 사용자에게 앱 추적을 허용하겠냐고 묻는 다이얼로그가 뜨지 않는 것에 대해 문제가 있다고 이의를 제기하며 심사에서 승인 거절이 되었다. 분명 앱 자체에서는 해결되었다고 생각했는데, 이후에 실기기에서 시험을 해보니 이런 문제가 있었다.

 

## 앱 추적 권한 다이얼로그가 불안정하게 뜨던 이유

1. 앱 추적 권한에 대해서 묻는 다이얼로그 창이 뜨다 말다하기를 반복했다. 혹은 무작위로 뜨거나 안뜨거나 했다.
2. 기기에 따라 뜨지 않을 때도 있었다. : 심사관들은 iPad로서 심사를 한다고 하길래 iPad에서 테스트를 했는데, 아이폰에서 되고 아이패드에서 안되기도 했다. 아이패드라서 안되기보단 이조차도 1번과 마찬가지로 무작위로 뜨고 안뜨고의 문제인 것 같았다.

앱에서 제대로 동작하는지를 확인할 때는 다음과 같은 과정이 반복적으로 이뤄졌다.
## App Store 심사 통과를 위해 반복했던 테스트 방법
     1. 앱을 완벽히 지울 것
     2. 맥북에 케이블로 연결한 뒤, Xcode를 통해 run 할 것
     3. ATT 와 더불어 Local Network에 관한 다이얼로그도 뜨는지 확인할 것

결국 내가 할 수 있는 것은 여러번의 검증을 거쳐서 에이전트에게 제대로 구현이 되는지, 안되는지를 보고하며 수정하는 수 밖에 없었다.

이 문제만 해결하면 심사에 통과될 줄 알았는데 또 두가지 문제가 있다며 거절 당했다.
첫번째 오류는 다음과 같았다.

## 카메라 접근 권한 거부 시 발생한 무한 로딩 오류

 

심사관이 첨부해 준 사진을 보니, 카메라 기능에서 무한 로딩 상황이 있다고 했다.
아이폰, 아이패드 모두 테스트를 했는데, 내가 가진 기계에선 좀처럼 오류를 발견할 수 없었다. 그래서 에이전트한테 오류를 검증해 달라고 했다. 에이전트는 "카메라 접근 권한 거부 시, 카메라 동작에 관한 부분에 오류가 있다"는 것을 발견했다. 그제서야 내가 늘 "카메라 접근 권한"에서 "동의함"만 눌러왔다는 것을 알았다.

테스트를 해보니 "카메라 접근 권한"에 대해 비동의를 하면 화면이 모두 다운되면서, 심사관이 보냈던 것처럼 무한로딩에 빠졌다.
문제를 해결한 뒤, 카메라 접근 권한에 비동의 했을 때 서비스를 이용하기 위해서는 상태 설정을 변경해야 한다는 안내 문구를 일시적으로 뜨다 사라질 수 있게 생성을 부탁했다.

 

두번째 문제는 다음과 같았다.

## iPad landscape 모드에서 발생한 레이아웃 잘림 문제

이 문제는 도무지 찾아낼 수가 없었다. 이 역시 아이패드나 아이폰에서 문제가 없었고, 그저 에이전트에게 오류를 검증하고 한 번 더 확인해보라고 하는 것 말고는 오류를 발견할 방법이 없었기 때문이었다. AI 에이전트는 뭐가 문제였다는 오류는 발견하지 못한 채, 화면 하단에 여백만 더 늘렸다고만 했다. 

그렇게 제출을 하려고 했다. 

 

그러다 우연히, 화면 고정 잠금을 해제해 두었었는데, 아이패드에서 화면이 landscape view(긴 쪽이 상단으로 돌려지는 뷰)를 하니, 심사관이 말하는 '아랫단이 잘려나가는 문제'가 확실히 보였다. AI는 분명 문제를 해결했다고 했지만 다시보니 문제를 전혀 해결해내지 못하고 있었다는 걸 발견했다.

이번에도 여러번, 여러기기에서 테스트를 해가며 오류를 수정한 뒤, 버전을 올려 빌드한 뒤 업데이트 했다.

 

내가 발견하지 못한 문제를 어쩜 이렇게 잘 찾아내는지..애플 심사관들의 매의 눈에 그저 감탄스럽기만 하다.
앱 개발은 구상할 때에도 시간이 많이 걸리지만, 오류를 검증하고 심사에 통과되는 과정이 정말 시간이 오래 걸리는 것 같다.
절대로 지치지 말고, 여러번 실기기에서 여러모로 테스트를 하고 오류를 잡아낼 것! 
이번에는 오류가 없이 심사에 통과되었으면 좋겠다.

 

애플 앱스토어 심사는 단순히 기능이 동작하는지만 보는 것이 아니라,
모든 권한 거부 상황과 기기별 화면 구성까지
꼼꼼하게 검증한다는 점을 이번 reject 과정을 통해 절실히 느꼈다.

+ Recent posts