앱 스토어와 구글 플레이에 승인받기 위한 앱을 구현하는 것은 어려울 수 있습니다. 특히 In-App 구매 (IAP)와 구독을 구현할 때 더욱 그러합니다. 2025년 stricter guidelines로 인해 리뷰어들이 무엇을 찾는지 이해하는 것이 중요합니다. 이 포괄적인 가이드는 첫 번째 제출에서 리뷰 통과하기 위한 모든 것을 다룹니다.
세부적인 설정 지침이 필요합니다? 체크하는 완전한 가이드: iOS 앱 스토어 리뷰 | 안드로이드 플레이 스토어 리뷰
IAP를 포함한 앱이 왜 거절되는지
IAP를 포함한 앱은 실제 돈 거래를 포함하고 있어 더 높은 심사 기준을 받습니다. 애플의 앱 스토어 리뷰 지침 그리고 구글 플레이의 수익화 정책, 2025년의 주요 거절 사유는:
- 가격이 불분명합니다 (거절의 42%)
- 구독 약관이 누락되거나 혼란스럽습니다 (31%)
- 위장 UI 패턴 (18%)
- 개인 정보 보호 정책 위반 (9%)
이러한 함정에서 벗어나기 위해 어떻게 해야 하는지 알아보겠습니다.
iOS 앱 스토어 요구 사항
📖 iOS 앱 스토어 가이드: 설치 방법을 완전히 이해하려면 iOS 앱 스토어 리뷰 가이드
1. 가격 정보의 완전한 투명성
애플은 구매 버튼 이전에 정확한 가격 정보를 공개해야 합니다. 이전 구매 버튼 이전에 가격 정보를 공개해야 합니다. 이것은 협상할 수 없는 요구 사항입니다.
애플이 원하는 것을 보려면:
- 가격이 명확하게 표시되었습니다: “월 $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. 구독 계획 제시
애플은 비싼 계층을 밀어붙히기 위해 '어두운 패턴'을 사용하는 앱을 신고한다.
필수:
- 모든 구독 계층을 동일하게 표시
- 프리미엄 옵션을 미리 선택하지 않기
- 기능 비교가 명확하게 표시
- 비싼 옵션을 찾기 쉬운 대안이 쉽게 찾을 수 있도록 하기
금지:
- 자동 연간 계획으로 기본값 설정
- 월별 옵션을 숨기기
- 카운트다운 타이머를 사용하여 가짜 긴급성을 만들기
- 가짜 부족 ('마지막 3 개의 자리!' )
3. 구매내역 복원 기능
IAP를 사용하는 모든 앱은 지원 연락처가 필요하지 않도록 구매내역 복원 버튼을 제공해야 합니다. 더 자세한 내용은我们的 애플 스토어 리뷰 통과 방법.
Implementation:
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.');
}
}
4. 개인 정보 보호 준수 (5.1.1 절)
2025년은 개인 정보 보호 강화의 해입니다. 애플은 이제 다음과 같이 요구합니다:
모든 권한에 대해:
- 명확한 설명 앞서 요청
- 데이터 저장/공유 방법
- 선택 사항
- 예시
entries: 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>
안드로이드 구글 플레이 요구 사항
전체적인 안드로이드 가이드:
📖 설정 방법을 완벽하게 이해하려면 안드로이드 플레이 스토어 리뷰 가이드 Capgo
1. Google Play Billing 의 필수
디지털 상품 (구독, 앱 내 콘텐츠) 에서 는 Google Play Billing 을 사용해야 합니다. 다른 결제 방법은 거부될 것입니다.
디지털 상품 (Play Billing 사용 필수):
- 기능의 구독
- 앱 내 화폐
- 전자책, 음악 등 디지털 콘텐츠
- 프리미엄 언락
물리적 상품 (Play Billing 사용 불가):
- 실제 물품
- 물리적 서비스
- 자선 기부
자연스러운 구입 구현:
완전한 안드로이드 설정을 위해 참조하십시오. 안드로이드 샌드박스 테스트 그리고 구독 생성.
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
- 앱 내에서 개인정보 보호 정책 링크 접근 가능
- 정확한 데이터 안전 섹션 선언
데이터 안전 선언해야 함:
- 구매 내역 수집
- 전자 메일 주소 (영수증)
- 기기 ID (위조 방지)
- 분석 데이터

두 플랫폼 모두에서 일반적인 거절 사유
1. 메타데이터 불일치
왜 실패하는가:
- 스크린샷은 현재 버전에 없는 기능을 보여주고 있다
- 설명은 실제로 존재하지 않는 기능을 약속하고 있다
- 가격은 앱에 있는 것과 다르다

예방책:
- 스크린샷을 매 제출마다 업데이트 하라
- 설명은 실제 기능과 일치하라
- 모든 주장은 정확한지 테스트하라
- 기존 홍보 문구를 제거하라
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시간
- Peak 기간: 3-5일
- 주말: 검토 없음
- 급속화: 심각한 버그에 대해 사용 가능
Android:
- 초기: 평균 7일
- 업데이트: 일반적으로 더 빠름
- Rolling 검토: 언제든지 라이브 가능
- 정책 위반: 즉시 중단 가능
Pro 팁: iOS 앱을 월-수요일에 제출하여 주말 지연을 피하세요.
반려된 경우 어떻게 해야 하나요?

1단계: 문제를 이해하라
- 페이지/영역: Capgo에 대한 페이지. 역할: UI 레이블. 표시되는 곳: about.astro 페이지. 메시지 키 `about_how_step_label` (About How Step Label).
- 반려 통지를 신중히 읽어라
- 특정 지침을 참고하라
- 제공된 예제를 확인하라
피드백에서 패턴을 찾으라
- 2단계: 철저히 수정하라
- 페이지/영역: Capgo에 대한 페이지. 역할: UI 레이블. 표시되는 곳: about.astro 페이지. 메시지 키 `about_how_step_label` (About How Step Label).
- 원인에 대한 해결책을 찾고, 증상만 해결하지 마라
- 수정한 것을 철저히 테스트하라
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.
안드로이드 항의:
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 변경 사항
AI 기능성 공개 새로운
- AI 생성 콘텐츠에 대한 필수 레이블
- AI 사용 설명
- 콘텐츠 안전성 문서화
강화된 구독 명확성
- 오픈 플랜 비교가 필요합니다.
- 비용이 저렴한 옵션 숨기기 금지
- 업그레이드/다운그레이드 경로 명확화
개인 정보 강화
- 5.1.1 조항 강화
- 데이터 정당성에 대한 더 많은 심사
- 어린이 앱 규칙 강화
안드로이드 변경 사항
대안 결제 (지역)
- EEA, 한국에서 허용
- 구글 플레이 옵션을 제공해야 함
- 서비스 수수료 감소
구독 API 요구 사항
- 새로운 앱은 monetization.subscriptions API를 사용해야 함
- 기존 결제 API가 deprecated
- 구독 관리 도구 개선
성공을 위한 최선의 방법
1. 적절한 SDK를 사용하십시오
The @capgo/자연스러운 구매 plugin이 양쪽 플랫폼을 정확하게 처리합니다:
// 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. 올바른 오류 처리를 구현하세요
구매 상태를 모든 경우에 부드럽게 처리하세요:
- 사용자 취소 (침묵)
- 네트워크 오류 (재시도 옵션)
- 이미 소유한 경우 (복원)
- 제품이 사용할 수 없을 때 (사용자에게 알리세요)
- 결제 중인 경우 (이후 확인)
3. 명확하게 전달하세요
사용자는 항상 알 수 있어야 합니다:
- 무엇을 구매하는가
- 얼마가 드는가
- 언제 청구되는가
- 취소하는 방법
- trial 후에 무슨 일이 있는가
4. 광범위한 테스트
iOS 샌드박스:
- App Store Connect에서 테스트 계정을 생성하세요
- 설정 > 앱 스토어 > 샌드박스에서 기기 설정
- 가속된 구독 기간에 주의하세요
Android 라이선스 테스트:
- Play Console에서 테스트 계정을 추가하세요
- See “구매 테스트” 알림을 확인하세요.
- 실제로 발생하는 요금은 없습니다.
자원
iOS App Store 리뷰 지침
iOS 네이티브 구매 설정 가이드
상세 리뷰 가이드
전문가 도움 필요?
앱 리뷰나 IAP 구현에 어려움을 겪고 있나요? 우리 팀은 앱 스토어 리뷰 준비 및 IAP 구현에 대한 전용 지원을 제공합니다.
우리와의 상담 전화 예약 개인화된 도움을 받기 위해:
- IAP 구현 리뷰
- 앱 스토어 리뷰 준비
- 제출 전략 지침
- 거절 해결 도움
- 설치 및 테스트 지원 완료
우리는 수백 개의 앱이 검토를 성공적으로 통과하는 데 도움을 주었습니다!
결론
2025 년 앱 스토어 검토를 통과하기 위해서는 세부 사항에 주의를 기울이고 명확한 의사소통 및 적절한 구현이 필요합니다. 주요 결론:
- 투명성이 필수적입니다 - 항상 가격을 미리 표시하십시오
- 플랫폼 규칙을 따르십시오 - 사용해야 하는 청구 시스템을 사용하십시오
- 정확하게 테스트하십시오 - 검토자보다 문제를 먼저 발견하십시오
- 명확하게 의사소통하십시오 - 사용자는 혼란스럽지 않아야 합니다
- 준비 문서 - 테스트 계정 준비
이 안내서를 따라하고 native-purchases 플러그인을 사용하는 올바른 도구를 사용하면 첫 번째 승인 확률을 크게 높일 수 있습니다. 주의: 리뷰어들은 사용자를 존중하고 지침을 따르는 앱을 찾고 있습니다. 사용자와 지침을 존중하는 마음으로 개발하면 승인이 따를 것입니다.인앱 구매 구현에 도움이 필요하신가요?
자세한 설명서를 확인하거나 커뮤니티에서 지원을 받으세요.
앱스토어 리뷰 통과 방법: IAP 구현 도움 필요하신가요? Capgo를 사용하는 경우 Capgo를 사용하는 경우 Capgo를 사용하는 경우
Capgo를 사용하는 경우
Capgo를 사용하는 경우 애플 스토어 리뷰 통과하기: 2025년 In-App 구매 앱 스토어 승인과 배포를 계획하고 연결하세요. @capgo/capacitor-앱 내 구매 리뷰 인앱 구매 승인 구현에 대한 구체적인 정보는 @capgo/capacitor-in-app-review에서 확인할 수 있습니다. @capgo/capacitor-in-app-review을 사용하여 인앱 구매 승인에 대한 네이티브 기능은 Using @capgo/capacitor-in-app-review에서 확인할 수 있습니다. @capgo/capacitor-네이티브 마켓 인앱 구매 승인 구현에 대한 구체적인 정보는 @capgo/capacitor-native-market에서 확인할 수 있습니다. @capgo/capacitor-native-market을 사용하여 인앱 구매 승인에 대한 네이티브 기능은 Using @capgo/capacitor-native-market에서 확인할 수 있습니다. Capacitor 온라인 업데이트(OTA): 애플 스토어 승인 가이드 Capacitor OTA Updates: App Store Approval Guide