메인 콘텐츠로 건너뛰기

2026년 첫 번째 앱 리뷰 가이드 - iOS 및 Android

A comprehensive guide for first-time app developers on passing App Store and Play Store reviews, including login requirements, privacy policies, and current Google Play testing requirements.

마틴 도나디우

마틴 도나디우

콘텐츠 마케터

2026년 iOS 및 Android용 완전한 첫 번째 앱 리뷰 가이드

첫 번째 앱을 App Store 또는 Play Store에 제출하는 것은 압도적으로 느껴질 수 있습니다. 2026년 현재의 지침과 더 엄격한 집행으로 인해 앱을 승인하기 위해서는 세부 사항에 대한 주의가 필요합니다. 이 완전한 가이드는 iOS 및 Android 플랫폼의 첫 번째 제출에 대한 리뷰를 통과하기 위해 필요한 모든 것을 안내합니다.

2026년 리뷰 프로세스 이해

애플과 구글은 최근 몇 년 동안 리뷰 프로세스를 엄격하게 강화했으며, 특히 개인 정보, 보안 및 사용자 경험에 중점을 두고 있습니다. 첫 번째 개발자에게 이러한 변경 사항을 이해하는 것은 중요합니다.

iOS App Store 리뷰 일정

  • 표준 리뷰24-48시간
  • Peak Periods: 3-5일 (특히 휴일 시즌 중)
  • 주말: 처리된 리뷰가 없습니다
  • 급여 검토: 심각한 버그 수정에 사용할 수 있습니다 (App Store Connect을 통해 요청해야 함)

프로 팁: 주중 초반 (월요일-화요일)에 제출하여 주말 지연을 피하세요. 월요일 제출물은 일반적으로 수요일에 검토됩니다.

App Store Connect 상태

  • 제출 준비: 빌드 또는 메타데이터가 준비 중입니다
  • 검토 대기: 애플이 제출물을 큐에 넣었습니다
  • In Review: __CAPGO_KEEP_0__
  • Pending Developer Release: __CAPGO_KEEP_0__
  • Rejected / Unresolved Issues: __CAPGO_KEEP_0__

Google Play Store Review Timeline (2026 Update)

  • 초기 검토: 3-7 일 (이전 년도보다 훨씬 더 길다)
  • 테스트 게이트 폐쇄: 14 일 이상의 영향을 받은 새로운 개인 Play Console 계정에 대해 접근을 요청하기 전에
  • 생산 검토 후 테스트: 일반적으로 테스트 요구 사항이 완료된 후 추가 3-7일
  • Updates to Existing Apps: 1-3일
  • Policy Violations: 추가 검토가 트리거되면 14일 이상까지 확장될 수 있습니다

Important Update: Google은 일부 새로운 Play Console 계정에 대해 훨씬 더 엄격한 테스트가 필요하다고 요구하기 시작했습니다. 이는 아래에서 자세히 설명됩니다.

Apple Developer Account Setup

: 첫 번째 iOS 릴리스 전에 Apple 측이 올바르게 설정되어 있는지 확인하세요:

  • Enroll in the Apple Developer Program
  • Turn on two-factor authentication for the Apple Account used for enrollment
  • 정확한 회원 유형을 선택하세요:
    • 개인 / 단독 사업자: 판매자 이름은 애플 스토어에서 법적 개인 이름이 됩니다.
    • 기업: 법적 엔터티, D-U-N-S 번호, 공개 웹사이트 및 Apple의 계약에 결합할 수 있는 사람의 권한이 필요합니다.
  • 등록 시 법적 이름을 사용하세요. 별명이나 회사 이름을 이름/성 필드에 입력하면 승인 지연이 발생할 수 있습니다.
  • 등록 승인이 완료되면 App Store Connect에 로그인하여 앱 레코드를 생성하세요. 최종 번들 ID, 앱 이름, SKU, 및 주요 언어를 포함합니다.

애플 개발자 프로그램 등록 페이지

웹에서 애플 등록 계속하기

애플 개발자 엔터티 유형을 선택하세요

중요: 애플은 시간에 따라 최소 SDK 요구 사항을 변경합니다. 현재까지는 2026년 4월 28일, App Store Connect에 업로드된 앱은 iOS & iPadOS 26 __CAPGO_KEEP_0__ 이상을 사용해야 합니다. iOS & iPadOS 26 SDK or later.

Android 퍼블리셔로 처음 시작하는 사람들을 가장 많이 당황하게 하는 변경 사항입니다.

12명 이상의 테스터가 필요합니다.

Google Play 개발자 계정이 개인 계정으로 생성된 경우

2023년 11월 13일 이후에 생성된 개인 계정의 경우 앱이 프로덕션에 출시되기 전에 폐쇄 테스트 기간을 완료해야 합니다. Requirements최소 12명 테스터

: 최소 12명의 테스터를 최소한 1명 이상 recruited해야 합니다.:

  • : 최소 12명의 테스터를 최소한 recruited해야 합니다.Requirements
  • 14일 테스트 기간: 앱은 최소 14일 연속으로 폐쇄 테스트 상태로 유지해야 합니다.
  • 생산 액세스 신청서: 테스트 기간이 끝난 후에도 Play Console에서 생산 액세스 신청이 필요합니다.
  • 피드백 수집: 발견한 문제, 수정한 내용, 테스터가 앱을 사용한 방식에 대한 기록을 남겨야 합니다.

테스트 트랙 설정 방법

  1. 폐쇄 테스트 트랙 만들기

    • Google Play Console로 이동
    • 테스트 및 출시 > 테스트 > 폐쇄 테스트로 이동
    • 폐쇄 테스트 트랙에서 새로운 릴리스 만들기
    • Android 앱 번들 업로드.aab)
  2. 테스터를 모집하세요

    테스터를 찾는 방법:

    • 친구와 가족 (가장 쉬운 시작점)
    • 개발자 커뮤니티 (Reddit의 /r/androiddev, /r/betatests)
    • 소셜 미디어 팔로워
    • 베타 테스트 플랫폼 (BetaList, BetaTesting.com)
    • 대학 학생 (연결이 있다면)

    중요: 테스터에게 확인하세요:

    • 유효한 Gmail 계정이 있어야 합니다
    • 실제로 안드로이드 기기를 사용합니다
    • 14일간의 전체 기간 동안 옵트인 상태로 유지합니다
  3. 테스터 초대

    • Play Console에서 테스터 목록을 만듭니다.
    • 테스터 이메일 주소를 추가합니다.
    • 테스터에게 옵트인 URL을 공유합니다.
    • 설치 및 사용을 위해 테스터에게 알림을 보내서 확인합니다.
  4. 테스트 활동 모니터링

    • 설치 숫자를 Play Console에서 확인합니다.
    • ANR (응답하지 않는 앱) 및 크래시 리포트를 추적합니다.
    • 테스터 피드백을 수집합니다.
    • 판매 전 중요 문제를 해결합니다.
  5. 프로덕션으로 승격합니다.

    • 14일 후 12명 이상의 테스터가 옵트인한 경우
    • Play Console 대시보드에서 프로덕션 액세스 신청하기
    • 모든 충돌 보고서 및 피드백 검토하기
    • 프로덕션 릴리즈 생성하고 최종 검토 제출하기

왜 구글이 이 기능을 구현했나요?

구글은 이 요구 사항을 구현했습니다.

  • 저품질 앱 스팸을 줄이기 위해
  • 사용자에게 앱이 도달하기 전에 앱이 올바르게 테스트되었는지 확인하기 위해
  • 실제 세계 사용 패턴을 통해 악성 앱을 식별하기 위해
  • Play 스토어의 전체 품질을 향상하기 위해

현실적인 점검: 이 기능을 추가하면 최소 2-3주가 출시 일정에 추가됩니다. 계획을 세우고 테스터를 조기에 모집하세요.

인증 및 로그인 요구 사항

인증 시스템의 적절한 구현이 부족한 경우 가장 흔한 거부 사유입니다. 특히 소셜 로그인에 대한 것입니다.

iOS용 Apple Sign-In 요구 사항 (중요)

애플의 규칙: 앱이 Google, Facebook, Twitter 등第三자 소셜 로그인 옵션을 제공한다면, Sign in with Apple도 제공해야 합니다. 이 규칙은 Google Sign-In

Facebook Login:

  • Twitter/X Login
  • LinkedIn Login
  • 기타第三자 인증 서비스
  • any other third-party authentication service
  • This applies to

이것은 적용되지 않습니다.:

  • 이메일/비밀번호만 인증
  • 정부 ID 시스템
  • 기업 SSO 시스템 (앱이 해당 기업에만 사용되는 경우)
  • 교육 제공자 인증 시스템

애플과 함께 로그인 구현

사회 로그인 사용 중이라면, 다음을 implement해야 합니다:

import { SignInWithApple } from '@capacitor-community/apple-sign-in';

async function signInWithApple() {
  try {
    const result = await SignInWithApple.authorize({
      clientId: 'com.yourapp.service',
      redirectURI: 'https://yourapp.com/auth/callback',
      scopes: 'email name',
      state: '12345',
      nonce: 'nonce',
    });

    // result contains:
    // - identityToken
    // - authorizationCode
    // - email (may be null if user previously authorized)
    // - givenName
    // - familyName

    // Send to your backend for verification
    await verifyAppleToken(result.identityToken);

  } catch (error) {
    console.error('Apple Sign In failed:', error);
  }
}

중요한 고려 사항:

  1. 이메일 개인 정보사용자는 이메일을 숨길 수 있습니다. 애플은 개인 정보 보호 이메일 (예: abc123@privaterelay.appleid.com앱은 이메일을 처리해야 합니다.

  2. 첫 번째 사용자 vs 이전 사용자: Apple은 첫 번째 인증 후 사용자 정보 (이름, 이메일)만 제공합니다. 이 정보를 저장하세요. 이후 로그인 시에는 포함되지 않습니다.

  3. 버튼 디자인: Apple은 공식 자산을 사용하여 Sign in with Apple 버튼에 대한 엄격한 디자인 지침을 제공합니다.

  4. 백엔드 인증: 백엔드 서버에서 항상 사용자 식별 토큰을 확인하고 클라이언트 측 토큰만 신뢰하지 마세요.

안드로이드 소셜 로그인 요구 사항

안드로이드는 iOS와 달리 특정 제공자를 요구하지 않지만 Google은 다음과 같은 지침을 제공합니다:

Google Sign-In 요구 사항:

  • 공식 Google Sign-In SDK을 사용해야 합니다.
  • Google의 브랜딩 지침을 따르세요.
  • 주요 옵션으로 제공하는 경우에만 사용하세요.

플랫폼 간 최적의 방법: 애플리케이션의 일관성을 위해 동일한 로그인 옵션을 양쪽 플랫폼에 제공하십시오:

  • 이메일/패스워드
  • 애플 (iOS 전용 또는 Android에서 웹 기반 애플 로그인 지원 시)
  • 구글 로그인
  • 기타 사회적 옵션 (페이스북, 트위터 등)

데모 계정 요구 사항

리뷰에 중요: 앱이 로그인 요구를 하는 경우, 앱 리뷰 노트에 작동하는 데모 자격 증명을 제공해야 합니다. 일반적인 실수

Demo Account Information:

Username: reviewer@demo.com
Password: ReviewTest123!

OR

Test Phone: +1 555-0123
Test OTP: 123456 (static for review)

Notes:
- This account has full premium features enabled
- All payment flows work in sandbox mode
- Account will reset daily

만료된 자격 증명을 제공하는 경우:

  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__ 계정은 모든 기능에 접근할 수 없습니다.
  • __CAPGO_KEEP_0__ 전화 인증을 우회하는 방법을 설명하지 않습니다.
  • __CAPGO_KEEP_0__ 샌드박스 결제 세부 정보를 언급하지 않습니다.

모든 앱 스토어는 앱의 개인 정보 보호 정책과 이용 약관이 접근 가능해야 합니다. __CAPGO_KEEP_0__ __CAPGO_KEEP_0__

개인 정보 보호 정책 요구 사항

개인 정보 보호 정책은 다음을 포함해야 합니다.

  1. 공개적으로 접근 가능해야 합니다.

    • 공개 URL (로그인 없이)에서 호스팅되어야 합니다.
    • 표준 웹 브라우저에서 로드되어야 합니다.
    • 앱의 언어와 동일한 언어로 제공됩니다.
  2. 필수 주제를 다룹니다.:

    • 수집하는 데이터에 대해 자세히 설명하세요.
    • 수집된 데이터를 어떻게 사용하는지 설명하세요.
    • 세 번째 당사자와 데이터를 공유하는지 여부를 설명하세요.
    • 데이터가 얼마나 오래 보관되는지 설명하세요.
    • 사용자의 권리 (접근, 삭제, 이동성) 에 대해 설명하세요.
    • 개인 정보 보호에 대한 문의에 대한 연락처 정보를 제공하세요.
    • 13/16세 미만의 사용자에게 앱이 제공되는 경우, 아동의 개인 정보 보호에 대해 설명하세요.
  3. 앱 내에서 연결되어야 합니다.

    • 설정 또는 계정 화면에서 접근할 수 있어야 합니다.
    • 메뉴 내에 숨겨지지 않도록, 단일 탭으로 접근할 수 있어야 합니다.
    • 기본 브라우저 또는 앱 내 브라우저에서 열릴지

개인정보 보호 정책을 어디서 호스팅할지

Option 1: 자신의 웹사이트 (권장)

https://yourapp.com/privacy-policy
https://yourapp.com/terms-of-service

Option 2: GitHub 페이지 (무료)

https://yourusername.github.io/app-privacy-policy

Option 3: 개인정보 보호 정책 생성기 (빠른 시작)

중요: 앱이 실제로 사용하는 데이터 정책을 정확하게 반영하기 위해 정책을 확인하세요. 앱에 맞지 않는 일반 템플릿은 표시됩니다.

약관 및 이용 조건 요구 사항

항상 필수는 아니지만, 다음 경우 약관 및 이용 조건이 highly 추천되고 필요합니다:

  • 인앱 구매 또는 구독을 제공합니다
  • 사용자 생성 콘텐츠가 있습니다
  • 기본 앱 기능 이외의 서비스를 제공합니다
  • 법적 보호를 원합니다

포함되어야 함:

  • 허용된 사용 정책
  • 계정 종료 조건
  • 책임 제한
  • 지적 재산권
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_1__

__CAPGO_KEEP_2__

// Settings or Account Screen
function LegalLinks() {
  return (
    <div className="legal-section">
      <h3>Legal</h3>
      <a
        href="https://yourapp.com/privacy-policy"
        target="_blank"
        rel="noopener noreferrer"
      >
        Privacy Policy
      </a>
      <a
        href="https://yourapp.com/terms-of-service"
        target="_blank"
        rel="noopener noreferrer"
      >
        Terms of Service
      </a>
      <a
        href="https://yourapp.com/contact"
        target="_blank"
        rel="noopener noreferrer"
      >
        Contact Us
      </a>
    </div>
  );
}

__CAPGO_KEEP_3__

__CAPGO_KEEP_4__

__CAPGO_KEEP_5__:

  • __CAPGO_KEEP_6__
  • __CAPGO_KEEP_7__
  • __CAPGO_KEEP_8__
  • __CAPGO_KEEP_9__
  • __CAPGO_KEEP_10__

__CAPGO_KEEP_11__:

  • 매장 존재 > 매장 설정 > 개인 정보 보호 정책
  • 모든 어플리케이션에 적용되는 필수 항목
  • 모든 어플리케이션에 강력히 권장하는 항목

개인 정보 보호 영양 표

iOS는 '영양 표' 형식의 상세 개인 정보 공개를 요구합니다.

선언해야 하는 카테고리:

  • 연락처: 이메일, 이름, 전화번호
  • 금융 정보: 결제 정보, 신용 카드, 은행 계좌
  • 위치: 정확한 위치 또는 거리
  • 사용자 콘텐츠: 사진, 동영상, 음성, 메시지
  • 식별자: 사용자 ID, 기기 ID, 광고 ID
  • 사용 데이터: 제품 상호 작용, 광고 데이터, 충돌 로그
  • 디아그노스틱: 충돌 데이터, 성능 데이터

각 데이터 유형에 대해 명시하세요:

  • 수집 여부
  • 사용자 식별자와 연결 여부
  • 추적 용도로 사용 여부
  • 데이터 수집 목적

일반적인 오류: 데이터 분석 SDK이 수집하는 데이터가 없다고 말하는 것입니다. 모든第三자 SDK를 데이터 수집에 대한 감사서 확인하세요.

Google Play 데이터 안전 섹션

iOS와 유사하게, Android는 데이터 안전성 선언이 필요합니다.

단계:

  1. Play 콘솔 > 앱 콘텐츠 > 데이터 안전성으로 이동하세요.
  2. 데이터 수집에 대한 질문에 답변하세요.
  3. 수집하는 데이터 유형을 지정하세요.
  4. 암호화 등 보안 관행을 설명하세요.
  5. 개인 정보 보호 정책 링크를 제공하세요.

중요: 이 정보는 법적으로 ràng buộc됩니다. 앱 제거 및 계정 정지로 이어질 수 있는 허위 광고는 피해야 합니다.

최초 거부 사유

앱이 거부되는 이유를 이해하면 이러한 함정에 빠지지 않도록 도와줍니다:

1. 앱이 충돌하거나 실행되지 않음

왜 발생하는가:

  • 에뮬레이터에서만 테스트하는 것
  • 네트워크 오류에 대한 오류 처리가 누락된 경우
  • API에 도달할 수 없는 하드 코딩된 엔드 포인트
  • 특정 장치 기능 (카메라, GPS) 의존

예방책:

// Always implement proper error handling
async function loadData() {
  try {
    const response = await fetch('https://api.yourapp.com/data');

    if (!response.ok) {
      throw new Error(`HTTP ${response.status}`);
    }

    const data = await response.json();
    return data;

  } catch (error) {
    // Show user-friendly error
    showError('Unable to load data. Please check your connection.');

    // Log for debugging
    console.error('Data load failed:', error);

    // Graceful degradation
    return getCachedData();
  }
}

테스트 체크리스트:

  • 실제 장치 (최소 2-3 개 모델)에서 테스트
  • 잘못된 네트워크 환경에서 테스트 (네트워크 링크 컨디셔너 사용)
  • 비행 모드에서 테스트
  • 권한이 거부된 경우 테스트
  • 캐시 데이터가 없는 새 설치 (fresh install)에서 테스트

2. 핵심 기능이 누락되거나 깨진 경우

왜 발생하는가:

  • 스크린샷에 표시된 기능이 아직 존재하지 않음
  • 데모 계정은 광고된 기능에 접근할 수 없음
  • 프리미엄 기능이 표시되지만 구현되지 않음
  • 앱 내에 “곧 출시” 플레이스 홀더가 존재

예방 방법:

  • 모두 광고된 기능이 완료된 경우에만 제출
  • __CAPGO_KEEP_0__ 계정에 전체 접근 권한이 있는지 확인하세요.
  • __CAPGO_KEEP_0__ 제출 전에 불완전한 기능을 제거하거나 비활성화하세요.
  • __CAPGO_KEEP_0__ 현재 빌드와 정확히 일치하는 스크린샷으로 업데이트하세요.

4. 연령 등급에 부적합한 콘텐츠

왜 발생하는가?:

  • 연령 등급이 4+로 설정되어 있지만 앱에는 사회 기능이 포함되어 있습니다.
  • 설정된 연령 등급과 실제 콘텐츠가 일치하지 않습니다.
  • 게시판에 없는 콘텐츠 moderation
  • 게시판에 없는 외부 콘텐츠에 대한 링크

연령 등급을 올바르게 설정하는 방법:

iOS 연령 등급:

  • 4+ (부적합한 콘텐츠가 없습니다.)
  • 9세 이상 (가끔씩 약한 내용)
  • 12세 이상 (중간 수준의 내용)
  • 17세 이상 (빈번하게/강한 내용)

Android 콘텐츠 등급:

  • 전체
  • 10세 이상의 모든 사람
  • 청소년
  • 성인 17세 이상
  • 18세 이상만

중요: 사용자가 서로 콘텐츠를 공유할 수 있으면, 다음이 필요합니다:

  • 콘텐츠 관리 시스템
  • 기능 차단/차단기능
  • 보호된 커뮤니티 지침
  • 필요한 경우 나이 제한

4. 유도적 또는 허위 메타데이터

왜 발생하는가:

  • 앱 이름이 없는 기능을 약속한다
  • 경쟁사 스크린샷 또는 가짜 스크린샷
  • 허위 리뷰 또는 평점 조작
  • 설명에 증명되지 않은 최고의 표현

문제가 있는 메타데이터 예시:

BAD:

  • 앱 이름: "최고의 피트니스 트래커 - #1 앱"
  • Description: “이제까지 가장 놀라운, 혁신적인 앱!”
  • Screenshots: 일반적인 스톡 사진

GOOD:

  • App Name: “FitTrack - 운동 로거”
  • Description: “운동 루틴을 customizable 하게 관리하고, 진행 상황을 차트로 확인하세요.”
  • Screenshots: 현재 빌드에서 실제 앱 화면

5. 충분한 테스트가 부족한 경우 (특히 안드로이드 클로즈드 테스트)

왜 발생하는가:

  • 필요한 14일 테스트 기간을 건너 뛰는 경우
  • 테스터를 충분히 모집하지 않는 경우
  • 테스터가 실제로 앱을 사용하지 않는 경우
  • 테스트 중 앱의 충돌을 모니터링하지 않는 경우

Launch Preparation 방법:

  • 정책 출시 전 3-4주 전에 테스터를 모집하세요
  • 테스트 중 Firebase Crashlytics 또는 유사한 도구를 사용하세요
  • 테스터와 적극적으로 상의 (설문, 피드백 양식)
  • 판매 전 중요 문제를 해결하세요

권한 부여가 필요하지 않은 경우

왜 발생하는가:

  • 위치 요청만 하는 경우
  • 카메라 권한 요청은 설명이 필요합니다
  • _contacts_ 접근은 명확한 목적이 있어야 합니다
  • 이동 중인 배경 위치는 네비게이션 앱이 아닌 경우

해결 방법:

iOS - Info.plist:

<key>NSCameraUsageDescription</key>
<string>Camera access is required to scan QR codes for quick login.</string>

<key>NSLocationWhenInUseUsageDescription</key>
<string>Location helps us show nearby fitness centers and outdoor running routes.</string>

<key>NSPhotoLibraryUsageDescription</key>
<string>Photo library access lets you upload a profile picture and share workout photos.</string>

안드로이드 - 권한 전략:

<!-- Only request what you actually need -->
<uses-permission android:name="android.permission.CAMERA" />

<!-- Use when-in-use rather than always for location -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<!-- Avoid if possible -->
<!-- <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" /> -->

런타임 권한 요청:

import { Camera } from '@capacitor/camera';

async function takePicture() {
  // Request with context
  const permissionStatus = await Camera.requestPermissions();

  if (permissionStatus.camera === 'granted') {
    const photo = await Camera.getPhoto({
      quality: 90,
      allowEditing: true,
      resultType: 'uri'
    });

    return photo;
  } else {
    // Explain why permission is needed
    showDialog(
      'Camera access required',
      'To upload a profile picture, please enable camera access in Settings.'
    );
  }
}

iOS 전용 요구 사항

애플 스토어 스크린샷 및 미리보기

필요한 크기:

  • 6.7” iPhone: 1290 x 2796
  • 13” iPad: 2064 x 2752
  • 12.9” iPad: 2048 x 2732

중요: 앱이 아이패드 지원을 한다면, 아이패드 스크린샷을 업로드해야 합니다. 아이폰 스크린샷을 아이패드 슬롯에 맞추지 마세요.

스크린샷 최적화 방법:

  • 실제 앱 콘텐츠를 보여주어야 함 (모의 콘텐츠 없음)
  • 상태栏을 제거하거나 현실적인 콘텐츠를 보여주어야 함
  • 모든 지원 언어에 맞게 지역화해야 함
  • 텍스트 오버레이가 과도하지 않도록 해야 함
  • 첫 2-3 개의 스크린샷에서 주요 기능을 보여주어야 함

앱 스토어 연결 메타데이터 설정

제출하기 전에 다음 앱 스토어 연결 필드를 완료해야 함:

  • 개인 정보 보호 정책 URL: iOS 앱에 필요
  • 지원 URL: 필수이며 실제 연락처 정보로 연결되어야 함
  • 연령 등급: 앱을 출시하기 위해 설문조사를 완료하세요.
  • 앱 리뷰 정보: 리뷰 팀에게 연락처, 로그인 필요 시 데모 인증 정보, 그리고 리뷰 팀에게 명확한 설명을 추가하세요.
  • 수출 규정: 암호화에 대한 질문에 답변하거나, 적절히 설정하여 업로드마다 동일한 답변을 반복하지 않도록 하세요. ITSAppUsesNonExemptEncryption 테스트 플라이트 전 앱 리뷰 Info.plist 생산 리뷰 전에 실제 테스트 플라이트를 한 번 진행하세요:

테스트 플라이트에서 정확한 빌드를 설치하세요.

리뷰 계정으로 로그인하세요.

  • 구매, 복원, 취소 경로를 따라가세요.
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_1__
  • 설정에 숨겨진 구성이 없는지 리뷰어에게 주요 기능에 접근할 수 있는지 확인합니다.
  • iPhone과 iPad에서 테스트하여 지원되는지 확인합니다.

요구 사항:

  • 15-30 초 길이
  • 실제 앱 동영상만 보여주어야 합니다.
  • 단축 텍스트 오버레이 포함할 수 있습니다.
  • 저작권 문제가 있는 음악은 포함하지 마십시오.
  • 스크린샷과 동일한 해상도

애플 로그인 구현

이미 위에 설명되어 있지만 iOS 리뷰에 중요합니다. 소셜 로그인 시.

인앱 구매 요구 사항

디지털 상품이나 서비스를 제공할 경우:

필수 공개 정보:

  • 구매 전에 가격이 명확하게 표기되어야 합니다.
  • 구독 약관이 명확하게 표기되어야 합니다.
  • 취소 방법이 표시되어야 합니다.
  • 구매를 복원하는 버튼

예시로 적합한 구독 화면:

function SubscriptionOffer() {
  return (
    <div className="subscription-screen">
      <h2>Choose Your Plan</h2>

      <PlanCard>
        <h3>Monthly</h3>
        <p className="price">$9.99/month</p>
        <ul>
          <li>Unlimited workouts</li>
          <li>Personalized plans</li>
          <li>Progress tracking</li>
        </ul>
        <button>Subscribe</button>
      </PlanCard>

      <PlanCard>
        <h3>Annual</h3>
        <p className="price">$79.99/year</p>
        <p className="savings">Save 33%</p>
        <ul>
          <li>Everything in Monthly</li>
          <li>Priority support</li>
        </ul>
        <button>Subscribe</button>
      </PlanCard>

      <div className="subscription-terms">
        <p>
          Subscription automatically renews unless cancelled at least
          24 hours before the end of the current period. Manage your
          subscription in Settings.
        </p>
        <button onClick={restorePurchases}>Restore Purchases</button>
      </div>

      <div className="legal-links">
        <a href="/privacy">Privacy Policy</a> |
        <a href="/terms">Terms of Service</a>
      </div>
    </div>
  );
}

안드로이드 전용 요구 사항

Google Play 콘솔 계정 설정

첫 번째 안드로이드 릴리즈 전에 Play 콘솔 계정과 앱 쉘이 존재하는지 확인하세요.

  • 개발자 계정을 생성하세요. Play 콘솔 가입
  • In Play Console, __CAPGO_KEEP_0__ 홈 > 앱 만들기
  • 기본 언어, 앱/게임 종류, 지원 이메일을 선택하세요
  • 필수 Play 정책, 내보내기, Play App Signing 선언을 수락하세요
  • 앱이 무료 이거나 유료

중요: 유료 앱은 무료로 변경할 수 있지만, 무료로 제공된 앱은 유료로 변경할 수 없습니다.

앱 번들 요구 사항

중요: Google Play는 Android App Bundle (.aab) 형식이 아닌 APK를 요구합니다.:

# Sync the native Android project first
bunx cap sync android

# Then build the release app bundle
cd android
./gradlew bundleRelease

목표 API 레벨 요구 사항

현재 요구 사항: 새로운 앱 및 앱 업데이트는 Android 15 (API 레벨 35) 이상을 대상으로 해야 합니다.

android/app/build.gradle 업데이트:

android {
    compileSdkVersion 35

    defaultConfig {
        targetSdkVersion 35
        minSdkVersion 23  // Minimum supported version
    }
}

Google Play 데이터 안전

이미 위에 설명된 바와 같이, Android 승인에 절대적으로 중요합니다.

현재 요구 사항에 따라 폐쇄 테스트 트랙

새로 생성된 개인 개발자 계정에 대한 큰 문제: 이 문서의 앞부분에 자세히 설명된 12 명의 테스터, 14 일 요구 사항입니다.

일정:

  1. 주 1: 테스터를 모집하고 폐쇄 테스트를 설정
  2. 주 2-3: 활성 테스트 기간 (14 일 이상)
  3. 4주차: 문제를 해결하고 프로덕션 릴리즈를 준비합니다.
  4. 5주차: 프로덕션 리뷰에 제출합니다.

대상 청중 및 콘텐츠 등급

콘텐츠 등급 설문조사:

  • 모든 앱에 필요합니다.
  • 10-15분 정도 소요됩니다.
  • 콘텐츠 등급 (모두, 청소년, 성인 등)을 결정합니다.
  • 콘텐츠가 답변에 영향을 주는 경우 콘텐츠를 업데이트할 때마다 업데이트하십시오.

커버된 주제:

  • 폭력
  • 성적 내용
  • 비속어
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_1__
  • __CAPGO_KEEP_2__

중요: 만 사용자 생성 콘텐츠 또는 사회 기능이 있는 경우, 이를 공개하고 관리를 구현해야 합니다.

__CAPGO_KEEP_3__

__CAPGO_KEEP_4__:

  • __CAPGO_KEEP_5__
  • __CAPGO_KEEP_6__
  • __CAPGO_KEEP_7__
  • __CAPGO_KEEP_8__
  • __CAPGO_KEEP_9__

설명:

  • 짧은 설명 (80자 이내)
  • 상세 설명 (4000자 이내)
  • 앱 기능을 정확하게 설명해야 함
  • 연락처 정보 또는 가격 포함 불가

제출 전 검토 목록

제출하기 전에 이 포괄적인 목록을 확인하세요:

기술 요구 사항

  • 실제 기기에서 앱이 성공적으로 시작됨
  • 스크린샷에 표시된 모든 기능 작동
  • 장소 홀더 또는 “곧 출시” 콘텐츠 없음
  • 모든 세 번째-party API 키는 프로덕션 키
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__

인증 및 로그인

  • iOS에서 Apple 로그인 기능이 포함됩니다.
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • GDPR/CCPA에 따라 계정 삭제 옵션 제공
  • 개인 정보 보호 정책 공개
  • 앱 스토어 목록에 개인 정보 보호 정책 URL 추가
  • 적용되는 경우 서비스 약관 공개
  • 설정 화면에서 개인 정보 보호 정책 연결
  • iOS에서 개인 정보 보호 정책 정확
  • 안드로이드에서 데이터 안전 섹션 완료
  • 모든 데이터 수집 목적 설명
  • SDK의 3자 데이터 수집 공개

콘텐츠 및 메타데이터

  • 앱 이름은 지침에 따라 키워드 스토핑을 피함
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__

iOS 전용

  • 애플과 함께 로그인 구현 (사용하는 경우)
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__
  • __CAPGO_KEEP_0__ 버전 35 이상 지원
  • App Store Connect에 개인 정보 보호 정책 URL 추가
  • 15.0 이상 iOS 버전 지원
  • IAP가 있는 경우 가격 명확하고 구입 취소 버튼 존재
  • Android나 다른 플랫폼에 대한 언급 없음
  • Android 전용
  • App Bundle (.aab) 형식 사용
  • __CAPGO_KEEP_0__ 35 이상 지원

콘텐츠 등급 설문조사 완료

  • 지원 URL이 실제 연락처와 함께 추가되었습니다
  • Target API 35 or higher
  • 수출 규정에 대한 올바른 답변
  • __CAPGO_KEEP_0__ 업로드
  • __CAPGO_KEEP_0__ 테스트가 완료되었습니다. (12 명의 테스터, 14 일)
  • __CAPGO_KEEP_0__ 테스트에서 발생한 충돌 보고서가 검토 및 수정되었습니다.
  • iOS 또는 다른 플랫폼에 대한 참조가 없습니다.

테스트 (Android 현재 요구 사항)

  • 12 명 이상의 테스터가 모집되었습니다. (Play 계정에 closed testing이 필요합니다.)
  • closed testing 트랙이 생성되었습니다.
  • 14 일 연속 테스트가 완료되었습니다.
  • 테스터가 앱을 실제로 사용했습니다 (설치만 한 경우가 아닙니다).
  • 테스트 중 충돌 감지가 활성화되었습니다.
  • 테스트에서 발견된 심각한 버그가 수정되었습니다.
  • 테스터의 feedback가 문서화되었습니다.

__CAPGO_KEEP_0__: __CAPGO_KEEP_0__

__CAPGO_KEEP_0__: 승인과 거부 사이의 차이를 만들 수 있는 훌륭한 리뷰 노트는 무엇입니까?

__CAPGO_KEEP_0__: 리뷰 노트 템플릿

APP REVIEW INFORMATION

=== Test Account ===
Email: reviewer@testapp.com
Password: TestReview123!
(This account has all premium features enabled)
(This account stays active during review)

=== Review Contact ===
Name: Jane Developer
Email: review@yourapp.com
Phone: +1 555-0100

=== Testing Instructions ===
1. Launch app and tap "Sign In"
2. Enter test credentials above
3. Navigate to "Dashboard" to see main features
4. Tap "Upgrade" to test subscription flow (sandbox mode)
5. Go to Settings > Account to see privacy policy and terms

=== Key Features to Test ===
- Workout tracking (tap "New Workout" on Dashboard)
- Progress charts (Analytics tab)
- Social sharing (Share button on workout details)
- Camera upload for profile picture (Settings > Profile)

=== Third-Party Services ===
- Firebase Authentication (for login)
- Stripe (for payments - sandbox mode)
- AWS S3 (for image uploads)
- Google Maps SDK (for location features)

=== Notes ===
- Location permission is optional, app works without it
- Camera permission only requested when uploading profile picture
- All subscription flows use Apple/Google sandbox environments
- Background location is not used
- Support URL and privacy policy are available from Settings > Account

=== Contact ===
For questions: developer@yourapp.com
Response time: Within 24 hours

__CAPGO_KEEP_0__: iOS 전용 리뷰 노트

__CAPGO_KEEP_0__: iOS에서는 다음을 포함하세요:

=== Device Coverage ===
Tested on: iPhone 15 Pro Max, iPad Pro 13-inch

=== App Store Connect Metadata ===
Support URL: https://yourapp.com/support
Privacy Policy: https://yourapp.com/privacy-policy

=== Submission Notes ===
- iPad screenshots match the current iPad UI
- Export compliance answered for this build
- Sign in with Apple is available on the login screen

__CAPGO_KEEP_0__: Android 전용 리뷰 노트

__CAPGO_KEEP_0__: Android에서는 다음을 포함하세요:

=== Testing Track Information ===
Closed testing period: [Start Date] to [End Date]
Number of active testers: 23
Critical issues found during testing: 2 (both fixed)
Test distribution method: Email invite list

=== Crash Data ===
Testing period crashes: 3 total
Crash rate: 0.8%
All crashes fixed in this build

=== API Levels ===
Target SDK: 35 (Android 15)
Min SDK: 23 (Android 6.0)
Tested on: Android 11, 12, 13, 14, 15

__CAPGO_KEEP_0__: 거부 시 처리 방법

__CAPGO_KEEP_0__: 첫 번째 제출 시 거부은 흔한 일입니다. 어떻게 처리해야 하나요?

__CAPGO_KEEP_0__: 거부 후 처리 방법

  1. __CAPGO_KEEP_0__: 거부 내용을 자세히 읽으세요.

    • __CAPGO_KEEP_0__: 위반된 구별 규정(예: 4.3, 5.1.1)을 기록하세요.
    • 리뷰어의 의견을 철저히 읽어보세요
    • 스크린샷이 제공된 경우 이를 확인하세요
  2. 이슈를 이해하세요

    • 공식 문서에서 지침을 확인하세요
    • 온라인에서 유사한 사례를 검색하세요
    • 이것이 착각인지 실제 문제인지 확인하세요
  3. 원인에 대한 해결책을 찾으세요

    • 단순히 패치하지 말고 올바르게 고치세요
    • 고치신 것을 철저히 테스트하세요
    • 변경한 것을 문서화하세요
  4. 적절한 대응을 하세요

    반려가 옳다면

    Thank you for the feedback. I have addressed the issue:
    
    Issue: Missing Sign in with Apple option
    
    Resolution: Added Sign in with Apple as a login option
    alongside Google Sign-In. The button appears on the login
    screen and follows Apple's design guidelines. You can test
    with the provided demo account or by creating a new account
    with Apple Sign-In.
    
    Changes made in: v1.0.1 (build 2)

    만약 그것이 잘못된 이해라고 생각한다면:

    Thank you for reviewing my app. I believe there may be a
    misunderstanding regarding [specific issue]:
    
    [Explain clearly with screenshots if needed]
    
    The functionality exists at: Settings > [specific location]
    
    I've added additional detail to the review notes to help
    locate this feature.
  5. 급히 다시 제출하십시오

    • 재제출은 일반적으로 빠른 시간 내 (24-48 시간) 처리됩니다.
    • 업데이트된 검토 노트를 포함하여 수정 내용을 설명하십시오
    • 이전 제출과 관련이 있으면 참고하십시오

일반적인 거절 응답

거절: '앱이 시작 시 충돌합니다.'

응답:

I sincerely apologize for the crash. I have identified and fixed
the issue:

Root cause: The app attempted to fetch data before network
initialization completed, causing a null reference exception.

Fix: Implemented proper async initialization with error handling
and offline mode. The app now gracefully handles network issues.

Testing: Verified on iPhone 12 (iOS 17), iPhone 14 Pro (iOS 17.1),
tested with WiFi, cellular, and airplane mode.

Build version: 1.0.2 (build 3)

거절: '개인 정보 정책이 누락되어 있습니다.'

응답:

Thank you for the feedback. I have added the privacy policy:

URL: https://myapp.com/privacy-policy
Location in app: Settings > Privacy Policy (tappable link)
Also added to: App Store Connect > App Information > Privacy Policy URL

The privacy policy covers all data collection as disclosed in the
Privacy Nutrition Labels.

거절: '4.2 - 최소 기능성에 부합하지 않습니다.'

이건 더 어려운 문제입니다. 그것은 당신의 앱이 충분히 기능을 제공하지 않아서 앱으로 승인되지 않는다는 것을 의미합니다. 응답:

Thank you for the feedback. I'd like to clarify the app's
functionality:

Core Features:
1. [Feature 1 with specific details]
2. [Feature 2 with specific details]
3. [Feature 3 with specific details]

The app provides significant utility beyond a simple website by:
- Offline functionality for [specific feature]
- Native camera integration for [specific feature]
- Push notifications for [specific feature]
- Device hardware access for [specific feature]

Test account credentials have been provided to demonstrate all
features. Please let me know if you need additional clarification.

__CAPGO_KEEP_0__

승인 후 관리 방법

__CAPGO_KEEP_1__

배포 후 모니터링:

  • __CAPGO_KEEP_2__
  • 중요한 지표
  • __CAPGO_KEEP_3__
  • 비정상 종료율 (0.5% 이하)
  • __CAPGO_KEEP_4__

앱 스토어/플레이 스토어 평점:

  • __CAPGO_KEEP_5__
  • 사용자 피드백 관리
  • Google Play Console Vitals
  • Sentry나 유사한 오류 추적

업데이트 지침

업데이트 제출 시:

  • 초기 제출과 마찬가지로 철저히 테스트
  • UI가 크게 변경된 경우 스크린샷 업데이트
  • 데이터 수집이 변경된 경우 개인 정보 레이블 업데이트
  • 명확한 '무엇이 새로운가?' 설명 제공
  • 주요 변경 사항에 대한 단계적 롤아웃 고려

준수 유지

연간 요구 사항:

  • 연간 Android 콘텐츠 등급 갱신 (연간 필수)
  • 개인 정보 보호 정책을 변경한 경우 개인 정보 보호 정책을 업데이트 하세요.
  • 콘텐츠가 변경된 경우 연령 등급을 검토하고 업데이트 하세요.
  • 3rd 파티 SDK를 준수하는지 감사하세요.

연속적인 모니터링:

  • 지침 변경 사항에 대한 최신 정보를 유지하세요.
  • 애플/구글 개발자 뉴스레터에 가입하세요.
  • 개발자 커뮤니티에 참여하세요.
  • 앱 스토어/플레이 스토어 정책 블로그를 팔로우하세요.

자원 및 추가 읽기

공식 문서

애플:

개인 정보 및 데이터 사용:

테스트 가이드라인

개인 정보 보호 정책 도구

앱 리뷰에 도움이 필요합니까?

앱 리뷰를 통과하기 위해 전문가의 도움을 원하거나 첫 번째 시도에서 통과하기 위해 압도당하지 않으려면, 우리는 도와드리겠습니다!

우리 팀과 상담 전화 예약하세요 개인화된 지원을 위해:

  • 앱 스토어 및 플레이 스토어 리뷰 준비
  • 개인 정보 보호 정책 및 법적 문서 검토
  • 애플과 함께 로그인 구현
  • 테스트 전략 및 테스터 모집
  • 리뷰 노트 준비
  • 반려 응답 및 항소
  • 완전한 앱 제출 프로세스

우리의 팀은 수백 명의 개발자가 앱 리뷰 프로세스를 성공적으로 탐색할 수 있도록 도왔으며, 여러분의 주말을 절약할 수 있습니다.

첫 번째 앱을 제출하는 것은 두려운 일일 수 있지만, 적절한 준비가 있으면 첫 번째 시도에서 리뷰를 통과할 수 있습니다. 다음의 중요한 점을 기억하세요:

이른 시일에 시작하세요

  1. Capgo: 안드로이드 - 최소 3주 전에 계획된 출시일로부터 12명의 테스터를 모집하십시오
  2. 개인정보 보호 우선: 개인정보 보호 정책이 준비되어 있으며 정확히 데이터 처리 방침을 반영하고 있습니다
  3. Apple Sign-In: iOS에서 사용하는 모든 소셜 로그인에 대해 Sign in with Apple을 포함해야 합니다
  4. 테스트를 철저히: 실제 장치에서 테스트하고, 네트워크가 느린 경우, 권한이 거부된 경우 테스트하십시오
  5. 진실을 밝힙니다: 정확한 메타데이터 및 개인정보 공개는 거부와 법적 문제를 예방합니다
  6. 상세한 검토 노트: 앱을 빠르게 이해할 수 있도록 검토자에게 도움을 주십시오

현재의 안드로이드 테스트 요구 사항은 프로세스를 더 오래 지속하지만, 결국은 더 나은 앱과 출시 후 문제가 적은 결과를 낳습니다. 안드로이드 제출을 위해 추가 3-4주를 계획하면 성공을 위한 준비가 될 것입니다.

__CAPGO_KEEP_0__

앱 출시를 위해 좋은 행운! 앱이 거절되더라도, 그것은 학습의 기회입니다. 성공적인 앱은 승인 전 여러 번의 검토를 거칩니다. 혼자서 진행하고 싶지 않다면?


상담을 예약하세요 Capgo’s live update solution 승인 후 앱에 라이브 업데이트를 구현하는 도움이 필요하신가요?

실시간 업데이트를 위해 Capacitor 앱에 대한 Capacitor을 사용하세요.

웹层 버그가 활성화된 경우, 앱 스토어 승인 대기 없이 Capgo을 통해 수정을 배포하세요. 사용자는 배경에서 업데이트를 받으며 네이티브 변경 사항은 일반적인 검토 경로에 남습니다.

시작하기

최신 블로그 글

Capgo은 전문적인 모바일 앱을 만들기 위해 필요한 최고의洞察력을 제공합니다.