내용으로 건너뛰기

iOS 샌드박스 테스트 구성

GitHub

iOS 내 앱 구매 테스트를 위해 App Store Connect 및 테스트 장치에 적절한 구성이 필요합니다. 이 가이드는 샌드박스 테스트를 시작하기 위해 필요한 모든 것을 다룹니다.

필수 조건

필수 조건
  • 애플 개발자 프로그램: 연간 갱신이 필요한 활성 회원
  • 합의: 은행 및 세금 정보가 완료된 '유료 애플리케이션 계약'에 서명
  • Xcode 프로젝트: 적절한 번들 식별자와 기능성으로 구성

설치 과정

설치 과정
  1. 애플 앱 스토어 연결에 서 서명한 애플리케이션 수수료 계약 서명

    App Store Connect에서 계약, 세금 및 은행 및 완료:

    • 애플 앱 스토어 연결에 서 서명한 애플리케이션 수수료 계약 서명
    • 은행 정보 추가
    • 세금 서식 완료

    애플이 정보를 승인하기까지 24-48시간 기다립니다.

  2. 샌드박스 테스트 사용자 생성

    In App Store Connect, go to 사용자 및 액세스 > 샌드박스 테스터.

    버튼을 클릭하여 새로운 샌드박스 테스터를 생성하세요. + 중요

    : Apple ID와 이미 연관된 이메일 주소를 사용하지 마세요. 이메일 별칭을 사용할 수 있습니다.Gmail:

    • iCloud: youremail+test@gmail.com
    • 샌드박스 테스터 생성 youremail+test@icloud.com

    테스트 장치 구성 (iOS 12+)

  3. iOS 12부터는 iTunes 계정에서 로그아웃하지 않아도 구매 테스트가 가능합니다.

    iOS 장치에서:

    __CAPGO_KEEP_0__

    1. Open 설정
    2. Tap 앱 스토어
    3. 스크롤을 아래로
    4. Tap 샌드박스 계정
    5. 샌드박스 테스트 계정으로 로그인하세요
  4. Xcode 프로젝트 구성

    Xcode 프로젝트가 다음을 보유하고 있어야 합니다.

    Bundle Identifier

    • 개발자 센터에 등록된 식별자와 일치해야 합니다.
    • App Store Connect에 등록된 식별자와 일치해야 합니다.

    In-App Purchase Capability

    1. Xcode에서 프로젝트를 선택하세요.
    2. 로 이동하세요. Signing & Capabilities
    3. 클릭하세요. + Capability
    4. 추가 In-App Purchase
  5. Create In-App Purchase Products

    앱 스토어 커넥트에서 앱을 선택하고 인앱 구매 제품을 생성하세요 (구독, 소모성 등).

    제품은 최소 '제출 준비' 상태여야 하며 샌드박스 테스트를 위해.

  6. 테스트 구현

    앱을 테스트 장치에 빌드하고 실행하세요. 구매 시도 시 다음과 같은 메시지를 확인하세요.

    [Environment: Sandbox]

    이 확인은 샌드박스 환경에서 실제 돈을 지불하지 않음을 의미합니다.

중요한 참고 사항

'중요한 참고 사항' 섹션

샌드박스 환경 특징

'샌드박스 환경 특징' 섹션
  • 실제 요금 청구 없음: 모든 구매는 샌드박스 모드에서 무료입니다
  • 급속 구독: 구독 기간이 단축되어 빠른 테스트를 위해 사용됩니다
    • 1 주 구독 = 3 분
    • 1 개월 구독 = 5 분
    • 2 개월 구독 = 10 분
    • 3 개월 구독 = 15 분
    • 6 개월 구독 = 30 분
    • 1 년 구독 = 1 시간
  • 자동 갱신 제한: 샌드박스 모드에서 구독이 6 번 자동 갱신됩니다
  • 즉시 취소: 취소된 구독은 즉시 만료됩니다.

샌드박스 계정 관리

샌드박스 계정 관리
  • 다양한 시나리오에 대해 여러 개의 테스트 계정을 생성합니다.
  • 테스트 계정은 테스트 기기에서만 사용해야 합니다.
  • 샌드박스 테스트를 위해 개인 Apple ID를 사용하지 마세요.
  • 테스트 계정은 지역에 관계없이 어떤 제품도 구매할 수 있습니다.

샌드박스 테스트 사용

샌드박스 테스트 사용
import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
const { isBillingSupported } = await NativePurchases.isBillingSupported();
if (!isBillingSupported) {
throw new Error('StoreKit not supported on this device');
}
// Fetch products (automatically uses sandbox when available)
const { products } = await NativePurchases.getProducts({
productIdentifiers: ['premium_monthly'],
productType: PURCHASE_TYPE.SUBS,
});
// Make test purchase
const transaction = await NativePurchases.purchaseProduct({
productIdentifier: 'premium_monthly',
productType: PURCHASE_TYPE.SUBS,
});
console.log('Test purchase successful!', transaction.transactionId);

인증

인증

When properly configured, you should observe:

  1. 사andbox 배너 구매 중에: '[환경: 사andbox]'
  2. 제품이 로드됩니다. 정상적으로
  3. 구매가 완료됩니다. 실제 요금이 청구되지 않습니다.
  4. 영수증이 올바르게 검증됩니다. 자동으로 (가속된 속도)
  5. 문제 해결 __CAPGO_KEEP_0__

__CAPGO_KEEP_0__

문제 해결

상품이 로드되지 않습니다.:

  • 애플 스토어 연결에 대한 번들 식별자가 일치하는지 확인하십시오.
  • 계약서가 서명되고 승인되었는지 확인하십시오.
  • 제품이 최소 '제출 준비' 상태인지 확인하십시오.
  • 제품을 생성한 후 2-3시간 기다리십시오.

“Cannot connect to iTunes Store”:

  • %s
  • Verify sandbox account is configured correctly:
  • Check device is connected to internet:
  • Try signing out and back into sandbox account:

Restart the app:

  • Xcode 콘솔에서 오류 메시지를 확인하세요.
  • In-App 구매 기능이 활성화되어 있는지 확인하세요.
  • 애플 ID가 아닌 샌드박스 계정 이메일을 사용하도록 하세요.
  • 새로운 샌드박스 테스트 계정을 생성해 보세요.

영수증 유효성 검사 오류:

  • 테스트 시 샌드박스 영수증 유효성 검사 엔드포인트를 사용하세요.
  • 생산 엔드포인트: https://buy.itunes.apple.com/verifyReceipt
  • 샌드박스 엔드포인트: https://sandbox.itunes.apple.com/verifyReceipt
  • native-purchases 플러그인은 자동으로 처리합니다.

구독 기간이 잘못된 경우:

  • 샌드박스에서는 구독 기간이 가속화된다는 것을 기억하세요.
  • 위의 변환 차트를 사용하여 예상 기간을 확인하세요.
  • __CAPGO_KEEP_0__ 자동 갱신은 샌드박스에서 최대 6회만 가능합니다.

__CAPGO_KEEP_0__ 이 애플 ID는 아직 iTunes Store에서 사용되지 않았습니다.

  • __CAPGO_KEEP_0__ 새로운 샌드박스 계정의 경우 정상입니다.
  • __CAPGO_KEEP_0__ 구매를 계속하시면 계정 활성화가 됩니다.
  • __CAPGO_KEEP_0__ 첫 사용 시에만 발생합니다.

__CAPGO_KEEP_0__

__CAPGO_KEEP_0__
  1. __CAPGO_KEEP_0__ 다양한 테스트 시나리오를 위해 여러 개의 테스트 계정을 생성하세요. __CAPGO_KEEP_0__ 모든 구독 기간을 테스트하여 동작을 확인하세요.
  2. __CAPGO_KEEP_0__ 취소와 갱신 동작을 테스트하세요. __CAPGO_KEEP_0__
  3. __CAPGO_KEEP_0__ 흐름
  4. 수령증 인증 정상 작동
  5. 구매 복원 테스트 기능
  6. 구독 업그레이드/다운그레이드 확인 행동
  7. kém 네트워크 조건하에 테스트

제품 출시 vs. 샌드박스

제목 “제품 출시 vs. 샌드박스”
기능샌드박스운영
실제 요금아니오
구독 기간가속일반
자동 갱신 제한6회무제한
취소 효과즉시기한 종료
수취인 확인 URL테스트 환경 URL운영 환경 URL
테스트 계정만아니오

추가 리소스

추가 리소스 섹션

자세한 내용은 공식 Apple StoreKit 문서를 참조하십시오 테스트 환경에서 테스트하는 방법에 대해.

Configure iOS Sandbox Testing에서 계속 진행하세요

Configure iOS Sandbox Testing에서 계속 진행하는 방법

Configure iOS Sandbox Testing을 사용하는 경우 Configure iOS Sandbox Testing 스토어 승인 및 배포를 계획하고자 할 때 Using @capgo/native-purchases @capgo/native-purchases를 사용하는 경우 @capgo/capacitor-in-app-review @capgo/capacitor-in-app-review를 사용하는 경우 @capgo/capacitor-in-app-review의 implementation detail을 사용하는 경우 @capgo/capacitor-in-app-review를 사용하는 경우 @capgo/capacitor-native-market을 사용하는 경우 @capgo/capacitor-native-market에 대한 구현 세부 정보 Using @capgo/capacitor-native-market을 사용합니다. @capgo/capacitor-native-market에 대한 네이티브 기능