앱스토어 심사 때 숨긴 기능, 개발자 계정까지 잃을 수 있다
심사용 계정에는 안 보이다가 승인 뒤에만 켜지는 기능을 넣어 둔 앱이 있다. 애플이 10월 16일 2.5.19 조항으로 다시 짚은 이 행위는 어디까지 금지될까?

- 애플은 10월 16일 심사 지침에 2.5.19를 두고 숨겨진·비활성·설명되지 않은 기능의 금지를 명확히 했다.
- AI 콘텐츠 생성 앱도 사용자 콘텐츠 규칙의 대상이다. 비동의 성적 이미지를 예방·제거하는 운영 책임이 따른다.
- 새 기능은 심사 노트에 구체적으로 설명하고 실제 접근할 수 있게 해야 한다. 승인 후에만 드러내는 방식은 금지 대상이다.
새 조항이 생겼지만, 처음 금지한 행동은 아니다
애플의 10월 16일 개정 공지는 2.5.19를 기존 정책의 명확화로 설명한다. 숨겨진 기능과 비활성 기능, 문서화되지 않은 기능은 이전에도 2.3.1에서 다루던 금지 대상이었다.
같은 날 별도 발표는 심사 중에는 앱의 목적을 다르게 보이게 한 뒤 승인 후 유해한 기능을 드러내는 이른바 bait-and-switch 행위를 지목했다. 정상적인 앱처럼 제출했다는 이유만으로 이후 숨긴 기능까지 허용되는 것은 아니라는 뜻이다.
이번 변경을 ‘애플이 모든 AI 앱을 금지했다’거나 ‘이전에는 심사 후 기능 교체가 가능했다’고 해석하면 범위를 벗어난다. 변화의 핵심은 기능 은폐와 유해 콘텐츠에 대한 기존 기준을 더 명시적으로 적었다는 데 있다.
설명에만 적고 심사자가 접근하지 못하게 해도 부족하다
2.5.19는 앱의 동작이 최종 사용자와 App Review에 명확해야 한다고 요구한다. 문서화되지 않은 기능을 코드 난독화 등의 수단으로 숨기려는 시도는 앱 제거와 개발자 계정 종료의 근거가 된다.
2.3.1(a)의 제출 의무도 함께 읽어야 한다. 새 기능과 동작, 제품 변경 사항을 Notes for Review에 구체적으로 설명하고 심사에서 접근할 수 있게 해야 한다. ‘기능 개선’처럼 모호한 설명만으로 중요한 변경을 대신할 수 없다.
이를 개발팀의 제출 준비에 적용하면, 특정 계정이나 설정에서만 열리는 화면은 진입 조건과 확인 경로까지 제공해야 한다. 기능 플래그나 A/B 테스트라는 기술 이름만으로 허용 여부가 결정되는 것은 아니다. 심사에서 숨긴 동작을 승인 후에 드러내는지, 실제 기능을 심사자가 확인할 수 있는지가 핵심이다.
AI 생성 앱에도 필터·신고·차단 체계가 필요하다
사용자 생성 콘텐츠 조항 1.2는 사용자가 콘텐츠를 만들고 생성하고 올리고 공유하는 앱을 대상으로 한다. 여기에는 소셜미디어와 UGC 플랫폼뿐 아니라 AI 콘텐츠 생성 앱도 명시돼 있다.
애플은 별도 발표에서 AI 도구로 만든 것을 포함한 비동의 성적 이미지를 적극적으로 예방하고 제거해야 한다고 밝혔다. 금지 콘텐츠가 올라온 뒤 신고를 받는 기능만 두고 운영 대응을 생략하는 방식으로는 이 요구를 충족했다고 보기 어렵다.
| 1.2의 요구 | 운영에서 제공할 수단 |
|---|---|
| 부적절한 콘텐츠 게시 방지 | 게시되는 자료를 걸러내는 방법이다. |
| 신고와 대응 | 공격적 콘텐츠 신고 수단과 제때 처리하는 절차다. |
| 악용 사용자 차단 | 서비스에서 악용 사용자를 차단할 수 있는 기능이다. |
| 연락 수단 | 사용자가 운영자에게 연락할 수 있는 공개 연락처다. |
적절한 보호 조치를 구현하지 않거나 통보받은 위반을 개선하지 않으면 개발자 행동 강령 위반으로 이어질 수 있다. 애플은 중대하거나 반복되는 행위에 앱과 개발자 프로그램에서의 즉시 제거가 가능하다고 규정한다. 모든 신고가 같은 처분으로 이어진다는 뜻은 아니다.
심사 노트에는 기능과 재현 조건을 구체적으로 쓴다
App Store Connect의 App Review information에는 심사에 필요한 설정과 시험 계정 정보를 적을 수 있다. 이 정보는 고객에게 공개되지 않는다. Notes는 어느 언어로든 작성할 수 있지만 한도는 4,000바이트다. 한글 4,000자와 같은 제한이 아니다.
로그인이 필요한 앱은 심사에 쓸 데모 계정 정보를 제공해야 하며, 그 계정은 만료되면 안 된다. 추가 계정의 정보는 Notes에 넣을 수 있다. 조건부 화면을 확인하는 데 여러 역할이 필요하다면, 계정별로 어떤 기능에 접근하는지 설명하는 방식이 유용하다.
제출 전에는 심사용 계정으로 기능에 접근할 수 있는지, 필요한 백엔드가 열려 있는지, 새 기능 설명과 실제 동작이 맞는지 확인해야 한다. 심사 노트에 적은 기능을 실제 심사 환경에서도 확인할 수 있어야 한다.
자주 묻는 질문
2.5.19는 숨은 기능을 이번에 처음 금지한 조항인가?
아니다. 애플은 기존 2.3.1에서 다루던 정책을 명확히 한 것이라고 설명했다.
심사 노트에 쓰기만 하면 기능을 열어 보여 주지 않아도 되는가?
아니다. 2.3.1(a)는 구체적인 설명뿐 아니라 심사에서 실제로 접근할 수 있을 것도 요구한다.
새 기능을 출시하려면 심사에 제출한 설명과 접근 가능한 동작부터 일치시켜야 한다. AI 생성 콘텐츠의 운영 책임도 앱 승인 뒤에 계속된다.