앱스토어와 구글 플레이에 앱을 승인받는 것은 어려울 수 있습니다. 특히 IAP와 구독을 implement하는 경우, 2025년의 더 엄격한 지침을 이해하는 것이 중요합니다. 리뷰어들이 무엇을 찾는지 이해하는 것이 중요합니다. 이 포괄적인 안내서에서는 첫 번째 제출에서 리뷰를 통과하기 위한 모든 것을 다룹니다.
세부 설정 지침이 필요합니까? 완전한 지침서를 확인하세요: iOS 앱 스토어 리뷰 | 안드로이드 플레이 스토어 리뷰
IAP를 포함한 앱이 왜 거절되는지
IAP를 포함한 앱은 실제 돈 거래를 포함하므로 더 높은 심사 기준을 받습니다. 2025년 기준, 애플의 앱 스토어 리뷰 지침서 및 구글 플레이의 수익화 정책거절의 주요 이유는 다음과 같습니다.
- 가격이 불분명합니다. (거절의 42%)
- __CAPGO_KEEP_0__ (31%)
- __CAPGO_KEEP_1__ (18%)
- __CAPGO_KEEP_2__ (9%)
애플리케이션을 개발할 때 발생할 수 있는 위험을 피하는 방법에 대해 알아보겠습니다.
__CAPGO_KEEP_3__ iOS 가이드:
📖 __CAPGO_KEEP_4__ __CAPGO_KEEP_5__ __CAPGO_KEEP_6__ iOS 리뷰 가이드
1. 가격 정보의 명확한 공개
애플은 구매 버튼 이전에 정확한 가격 정보 공개를 요구합니다. 이는 협상할 수 없는 사항입니다. __CAPGO_KEEP_7__ __CAPGO_KEEP_8__
What Apple Wants to See:
- 가격이 명확하게 표시되도록 하세요: “월 $9.99”
- 결제 주기 미리 알려주세요
- 사용자가 돈을 지불하는 대가
- 요금이 언제 발생하는지
- 취소 방법을 표시하세요

일반적인 실수: 가격을 사용자가 '구독' 버튼을 누를 때까지 숨기거나, 가격을 아주 작은 글씨로만 표시하는 경우
해결 방법:
// Example: Compliant subscription display
<div className="subscription-card">
<h2>Premium Plan</h2>
<p className="price">$9.99/month</p>
<ul>
<li>✓ Ad-free experience</li>
<li>✓ Unlimited cloud storage</li>
<li>✓ Priority support</li>
</ul>
<p className="terms">
Renews automatically. Cancel anytime in Settings.
</p>
<button>Subscribe Now</button>
</div>
가격 일관성 규칙: 모든 가격이 다음에 일치해야 합니다:
- 앱 스토어 목록
- 인앱 구매 화면
- 구독 관리
- 마케팅 자료
1달러의 차이만 있어도 자동으로 거절됩니다.
2. 구독 플랜 제시
애플은 비싼 계층을 밀어붙히기 위해 '다크 패턴'을 사용하는 앱을 신고합니다.
필수:
- 모든 구독 계층을 동일하게 표시하세요
- 프리미엄 옵션을 미리 선택하지 마세요
- 기능 비교가 명확하세요
- 저렴한 대안을 쉽게 찾을 수 있나요
__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__
import { NativePurchases } from '@capgo/native-purchases';
async function restorePurchases() {
try {
const { customerInfo } = await NativePurchases.restorePurchases();
if (customerInfo.activeSubscriptions.length > 0) {
showSuccess('Purchases restored!');
unlockPremiumFeatures();
} else {
showInfo('No previous purchases found.');
}
} catch (error) {
showError('Restore failed. Please try again.');
}
}
__CAPGO_KEEP_9__
__CAPGO_KEEP_10__
__CAPGO_KEEP_11__
- 명확한 설명 __CAPGO_KEEP_0__ __CAPGO_KEEP_1__
- 특정 사용 사례 (일반적인 것이 아닌)
- 데이터가 저장/공유되는 방식
- 선택 사항 여부
예시 Info.plist entries:
<key>NSCameraUsageDescription</key>
<string>Camera access lets you scan product barcodes for quick upgrades. Photos are never uploaded.</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Location shows relevant local content in your Premium subscription.</string>
2025년의 주요 거부 사유 중 하나는 부정확한 개인 정보 레이블입니다.
안드로이드 Google Play 요구 사항
📖 전체 안드로이드 가이드: 설치 지침을 완전히 확인하려면我们的__CAPGO_KEEP_2__를 참조하십시오. 안드로이드 플레이 스토어 리뷰 가이드
1. 구글 플레이 결제가 필요합니다.
디지털 상품 (구독, 앱 내 콘텐츠)에는 구글 플레이 결제를 사용해야 합니다.
대안 결제 방법은 거부될 것입니다.
- 디지털 상품 (구글 플레이 결제 필요):
- 기능의 구독
- 앱 내 통화
- 디지털 콘텐츠 (전자책, 음악)
프리미엄 언락
- 물리적 상품 (구글 플레이 결제 불가):
- 물리적 서비스
- 비영리 기부
native-purchases: 구현과 함께
Android 설정을 완료하려면 Android 샌드박스 테스트 및 구독 생성.
import { NativePurchases } from '@capgo/native-purchases';
// Automatically uses Google Play Billing on Android
await NativePurchases.configure({
apiKey: 'your_api_key'
});
const { products } = await NativePurchases.getProducts({
productIdentifiers: ['premium_monthly']
});
2. 투명한 자동 갱신
구글은 구독이 자동 갱신되는 것을 명확하게 공개해야 하며, 다음을 포함합니다.
- 자동 결제 전 알림
- 가격 알림
- 자동 결제 취소 접근성
UI 준수:
<div className="subscription-terms">
<p>Subscription renews automatically at $9.99/month</p>
<p>Cancel anytime in Google Play Subscriptions</p>
<p>Next billing date: February 15, 2025</p>
<button onClick={openManagement}>
Manage in Google Play
</button>
</div>
3. 개인정보 보호 정책 요구 사항
IAP 앱에 필수:
- Play Console에 개인정보 보호 정책 URL
- 앱 내에서 개인정보 보호 정책 링크 접근 가능
- 데이터 안전 섹션의 정확한 선언
데이터 안전 선언해야 함:
- 구매 내역 수집
- 영수증을 위한 이메일 주소
- 사기 방지 purposes의 기기 ID
- 분석 데이터

__CAPGO_KEEP_0__
__CAPGO_KEEP_0__
__CAPGO_KEEP_1__
- __CAPGO_KEEP_2__
- __CAPGO_KEEP_3__
- __CAPGO_KEEP_4__

__CAPGO_KEEP_6__
- __CAPGO_KEEP_7__
- __CAPGO_KEEP_8__
- __CAPGO_KEEP_9__
- __CAPGO_KEEP_10__
2. 유도적 마케팅
자동 거부 트리거:
- “#1 앱” 증거 없이
- “무제한”에 숨겨진 제한
- 사칭된 리뷰 또는 평점
- 경쟁사 비방

최선의 방법: 사실적이고 구체적이세요:
- ✓ “50,000명 이상의 사용자와 함께하세요”
- ✗ “세계에서 가장 좋은 앱”
- ✓ “연간 계획으로 최대 30%까지 절약하세요”
- ✗ “한정 시간 특별 할인!”
3. 구매 흐름이 깨진 경우
제출하기 전에 테스트해 보세요:
- 상품이 올바르게 로드됩니다.
- 구매가 성공적으로 완료됩니다.
- 프리미엄 기능이 즉시 활성화됩니다.
- 구매내역 복원 기능이 작동합니다.
- 오류 메시지가 사용자 친화적입니다.
- 네트워크 오류가 부드럽게 처리됩니다.
// Comprehensive error handling
async function handlePurchase(productId: string) {
try {
const { customerInfo } = await NativePurchases.purchaseProduct({
productIdentifier: productId
});
if (customerInfo.entitlements.active['premium']) {
unlockPremiumFeatures();
}
} catch (error: any) {
switch (error.code) {
case 'USER_CANCELLED':
// Silent - user backed out
break;
case 'ITEM_ALREADY_OWNED':
await NativePurchases.restorePurchases();
break;
case 'NETWORK_ERROR':
showError('Check your connection and try again.');
break;
default:
showError('Purchase failed. Please try again.');
}
}
}
제출하기 전에 사용해야 하는 체크리스트

이 체크리스트를 매 제출 전에 사용하세요. 자세한 테스트 절차는:
- iOS 테스트: iOS 샌드박스 테스트 가이드
- Android 테스트: Android 샌드박스 테스트 가이드
테스트
- 모든 구독 등급을 테스트하세요
- 무료 시범 기간이 올바르게 작동하는지 확인하세요
- 소개 제안을 테스트하세요
- 구매를 복원하는 것이 올바르게 작동하는지 확인하세요
- 다중 장치에서 테스트하세요
- 샌드박스/테스트 계정이 올바르게 작동하는지 확인하세요
가격 및 약관
- 가격은 모든 플랫폼에서 일치합니다.
- 구독 약관이 명확하게 표기되어 있습니다.
- 취소 지침이 표시됩니다.
- 결제 주기 표시됩니다.
- 무료 시범 기간이 정확합니다.
개인 정보 및 권한
- 스토어에서 개인 정보 정책을 연결합니다.
- 앱 내에서 개인 정보 정책에 접근할 수 있습니다.
- 모든 권한이 정당화됩니다.
- iOS의 Info.plist 설명이 명확합니다.
- Android의 Data Safety가 완료되었습니다.
메타데이터
- 스크린샷은 현재 버전을 보여줍니다.
- 설명은 기능과 일치합니다.
- 장치 텍스트 없음
- 연령 등급이 정확합니다.
- 모든 주장은 테스트 가능합니다.
Code 품질
- 시작 시 충돌 없음
- 모든 기능이 설명과 일치합니다.
- 오류 처리가 implement되었습니다.
- 로딩 상태가 표시됩니다.
- 네트워크 오류가 처리되었습니다.
리뷰 타임라인 기대치

iOS:
- 표준: 24-48 시간
- 피크 기간: 3-5 일
- 주말: 리뷰 없음
- 급여: 심각한 버그에 대해 가능
Android:
- 초기: 7 일 평균
- 업데이트: 일반적으로 더 빠르다
- 롤링 리뷰: 언제든지 라이브 가능
- 정책 위반: 즉시 중단 가능
프로 팁: __CAPGO_KEEP_0__
거부된 경우 처리 방법

1단계: 문제 이해
- 거부 통지를 신중히 읽기
- 특정 가이드라인을 언급하는 것을 주의하기
- 제공된 예시를 확인하기
- 피드백에서 패턴을 찾기
2단계: 철저한 수정
- 원인에 대처하기, 증상에 대처하지 않기
- 수정한 것을 철저히 테스트하기
- 수정한 모든 내용을 문서화하기
- 스크린샷 전/후
Step 3: 전문적으로 응답하라

iOS 해결 센터:
Thank you for the feedback. I have addressed the issue:
Issue: Subscription pricing not clear upfront
Fix: Added explicit pricing display on subscription screen
showing "$9.99/month" before purchase button. Also added
cancellation instructions on the same screen.
Screenshots showing changes are attached. Test account
provided in App Review Notes.
Android 항의:
Subject: Policy Violation Appeal - [App Name]
I have received notification regarding [Policy X.Y].
Changes made:
1. Updated subscription UI to show all pricing upfront
2. Added clear cancellation instructions
3. Implemented restore purchases functionality
Version [X.Y.Z] addresses all concerns. Test account
credentials provided below for verification.
Step 4: 빠르게 재제출하라
- 재제출은 더 빠르게 검토됩니다
- 보통 24시간 이내
- 테스트 계정 포함
- 이전 제출물 참조
2025년 업데이트 및 새로운 요구 사항
iOS 변경 사항
인공지능 기능 공개 (신규)
- 인공지능으로 생성된 콘텐츠에 대한 레이블링 필요
- 인공지능 사용 설명
- 콘텐츠 안전성 문서화
강화된 구독 명확성
- 비교 가능한 구독 옵션 제공
- 비용이 저렴한 옵션 숨기지 않기
- 업그레이드/다운그레이드 경로 명확화
개인정보 보호 강화
- 5.1.1 조항 강화
- 데이터 정당성에 대한 심사 강화
- 더 엄격한 어린이 앱 규칙
안드로이드 변경 사항
대안 결제 (지역)
- EEA, 한국에서 허용
- 구글 플레이 옵션을 제공해야 함
- 서비스 수수료 감소
구독 API 요구 사항
- 새 앱은 monetization.subscriptions API를 사용해야 함
- 기존 결제 API는 deprecated
- 구독 관리 도구 개선
성공을 위한最佳 관행
1. 올바른 SDK를 사용하세요
The @capgo/native-purchases Capgo 플러그인은 두 플랫폼 모두 올바르게 처리합니다.
// Single API for iOS and Android
await NativePurchases.configure({
apiKey: 'your_api_key'
});
// Automatically uses correct billing system
const { products } = await NativePurchases.getProducts({
productIdentifiers: ['premium_monthly']
});
// Platform-specific logic handled automatically
await NativePurchases.purchaseProduct({
productIdentifier: 'premium_monthly'
});
2. 올바른 오류 처리를 구현하세요
구매 상태를 모든 경우에 부드럽게 처리하세요.
- 사용자 취소 (침묵)
- 네트워크 오류 (재시도 옵션)
- 이미 소유한 (복원)
- 제품이 unavailable (사용자에게 알리세요)
- 결제 대기 (이후 확인)
3. 명확하게 의사소통하세요
사용자는 항상 알 수 있어야 합니다.
- 무엇을 구매하는지
- 얼마를 지불하는지
- 언제 청구가 되는지
- 취소하는 방법
- trial 후에 무슨 일이 일어나는지
4. 광범위한 테스트
iOS 샌드박스:
- App Store Connect 에서 테스트 계정을 생성하세요.
- 장치에서 설정 (설정 > 앱 스토어 > 샌드박스)
- 가속된 구독 기간에 주의하세요.
안드로이드 라이선스 테스트:
- Play Console에서 테스트 계정 추가
- '테스트 구매' 알림을 확인하세요
- 실제 요금이 발생하지 않습니다
자원
플랫폼 문서
구현 안내서
상세 리뷰 가이드
전문 도움 필요하세요?
앱 리뷰나 구독 구현에 어려움을 겪고 있나요? 우리 팀은 앱 구독 구현 및 리뷰 준비를 위한 전용 지원을 제공합니다.
우리와의 상담 전화 예약 개인화된 도움을 받기 위해
- IAP 구현 리뷰
- 앱 스토어 리뷰 준비
- 제출 전략 지침
- __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__ __CAPGO_KEEP_10__
- __CAPGO_KEEP_11__ - 사용자는 혼란스럽지 않아야 합니다.
- 문서를 준비하세요. - 테스트 계정 준비가 필요합니다.
이 안내서를 따라서 native-purchases 플러그인을 사용하는 것과 같은 적절한 도구를 사용하면 첫 번째 승인에 대한 기회를 크게 높일 수 있습니다. 주의하세요: 검토자는 사용자를 존중하고 지침을 따르는 앱을 찾고 있습니다. 사용자와 지침을 존중하는 마음으로 개발하면 승인이 따를 것입니다.인앱 구매를 구현하는 도움이 필요하세요?
자세한 설명서를 확인하거나 커뮤니티에 지원을 요청하세요.
앱 스토어 검토를 통과하기 위한 2025년 인앱 구매 방법에 대해 계속 진행하세요. __CAPGO_KEEP_0__ __CAPGO_KEEP_0__ __CAPGO_KEEP_0__
__CAPGO_KEEP_0__
만약에 2025년 앱 스토어 리뷰를 통과하기 위한 인앱 구매 방법 스토어 승인과 배포를 계획하고, @capgo/capacitor-인앱-리뷰 @capgo/capacitor-인앱-리뷰의 구현 세부 사항 @capgo/capacitor-인앱-리뷰를 사용하여 @capgo/capacitor-인앱-리뷰를 사용하여 @capgo/capacitor-네이티브-마켓 @capgo/capacitor-네이티브-마켓의 구현 세부 사항 @capgo/capacitor-네이티브-마켓을 사용하여 @capgo/capacitor-네이티브-마켓을 사용하여 @Capacitor OTA 업데이트스: 앱 스토어 승인 가이드 Capacitor 소프트웨어 업데이트: 앱 스토어 승인 가이드.