내용으로 건너뛰기

iOS 샌드박스 테스트 구성

GitHub

설치, 동기화 및 마크다운 가이드 포함

Prerequisites

Prerequisites
  • Prerequisites애플 개발자 프로그램
  • Agreements계약
  • : 은행 및 세금 정보가 완료된 "유료 애플리케이션 계약"에 서명Xcode 프로젝트

설정 과정

설정 과정
  1. 애플 결제 앱 동의서에 서명하세요

    애플 스토어 커넥트에서 계약, 세금 및 은행 을 클릭하고 완료하세요:

    • 애플 결제 앱 동의서에 서명하세요
    • 은행 정보를 추가하세요
    • 세금 관련 양식을 완료하세요

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

  2. 샌드박스 테스트 사용자 만들기

    애플 스토어 연결에서 사용자 및 액세스 > 샌드박스 테스터.

    Native 구매 테스트 + 버튼을 클릭하세요.

    중요샌드박스 테스트 사용자를 만들 때

    • Gmail: youremail+test@gmail.com
    • 가입: youremail+test@icloud.com

    아이클라우드:

  3. 샌드박스 테스터 만들기

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

    iOS 기기에서:

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

    Xcode 프로젝트가 다음을 포함해야 합니다:

    Bundle 식별자

    • 개발자 센터에 등록된 식별자와 일치해야 합니다.
    • 앱 스토어 연결에 등록된 식별자와 일치해야 합니다.

    인앱 구매 기능

    1. Xcode에서 프로젝트를 선택하세요
    2. 다음으로 가기 인증 및 기능
    3. 클릭 + 기능 추가
    4. 추가 앱 내 구매
  5. 앱 내 구매 제품 만들기

    앱 스토어 커넥트에서 앱을 선택하고 앱 내 구매 제품을 만들 수 있습니다. (구독, 소비 가능한 제품 등).

    샌드박스 테스트를 위해 제품은 '제출 준비' 상태 이상이어야 합니다.

  6. 구현 테스트

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

    [환경: 샌드박스]

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

중요한 참고사항

샌드박스 환경 특징

샌드박스 환경은 실제 환경과 다르며, 테스트를 위해 사용됩니다.

샌드박스 환경은 실제 환경과 다르며, 테스트를 위해 사용됩니다.
  • No actual charges: 모든 구매는 샌드박스 모드에서 무료입니다.
  • 속도 향상된 구독: 구독 기간이 단축되어 빠른 테스트를 위해 사용됩니다.
    • 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);

샌드박스 계정 관리

인증 섹션

구성되면 다음과 같은 결과를 관찰해야 합니다:

  1. 샌드박스 배너 구매 중에 '[환경: 샌드박스]'가 표시됩니다.
  2. 상품이 로드됩니다. 성공적으로
  3. 구매가 완료됩니다. 실제 요금이 청구되지 않습니다.
  4. 영수증이 올바르게 검증됩니다. 자동으로 구독이 갱신됩니다.
  5. 자동 갱신 속도가 가속됩니다. 자동 갱신 속도가 가속됩니다.

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

  • 앱 스토어 연결의 번들 식별자가 일치하는지 확인하세요
  • 계약서가 서명되고 승인되었는지 확인하세요
  • 상품이 최소 '제출 준비' 상태인지 확인하세요
  • 상품을 생성한 후 2-3 시간 기다려보세요

iTunes 스토어와 연결할 수 없습니다

  • iTunes 스토어와 연결할 수 없습니다:
  • 샌드박스 계정이 올바르게 구성되어 있는지 확인하세요
  • 장치가 인터넷에 연결되어 있는지 확인하세요
  • 샌드박스 계정에서 로그아웃하고 다시 로그인해 보세요

구매가 조용히 실패하는 경우:

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

수신증명 오류:

  • 테스트 중에는 샌드박스 수신증명 엔드포인트를 사용하세요
  • 생산 엔드포인트: https://buy.itunes.apple.com/verifyReceipt
  • 샌드박스 엔드포인트: https://sandbox.itunes.apple.com/verifyReceipt
  • Capgo 플러그인은 이 자동으로 처리합니다

구독 기간이 잘못된 경우:

  • 구독은 샌드박스에서 가속화되어 있으므로 기억하세요
  • 위의 변환 차트를 사용하여 예상 지속 시간을 확인하세요.
  • 샌드박스에서 구독은 최대 6번 자동 갱신됩니다.

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

  • 새로운 샌드박스 계정의 경우 이 Apple ID는 아직 iTunes Store에서 사용되지 않았습니다.
  • 계정을 활성화하기 위해 구매를 진행하세요.
  • 첫 번째 사용 시에만 발생합니다.

최선의 방법

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

제품용 vs. 샌드박스

제목: 제품용 vs. 샌드박스
기능테스트 환경실제 환경
실제 요금아니오예
구독 기간가속일반
자동 갱신 제한6회무제한
취소 효과즉시기간 종료
영수증 엔드포인트샌드박스 URL생산 URL
테스트 계정만예네

추가 리소스

추가 리소스

자세한 내용은 공식 애플 StoreKit 문서를 참조하십시오. Apple StoreKit 공식 문서 샌드박스 테스트를 진행합니다.

Configure iOS 샌드박스 테스트에서 계속 진행하세요.

Configure iOS 샌드박스 테스트에서 계속 진행하세요.

이러한 기능을 사용 중이라면 Configure iOS 샌드박스 테스트 스토어 승인 및 배포를 계획하고 있는 경우 @capgo/자연어 구매 native 기능을 사용하는 @capgo/native-purchases 에서 네이티브 기능을 위한 테스트를 위해 @capgo/capacitor-in-app-리뷰 in-app-reviewcapgo-capacitor @capgo/capacitor-앱 내 구매 native 기능을 위한 @capgo/capacitor-in-app-review에 대해 @capgo/capacitor-네이티브 마켓 for capgo의 구현 세부사항에 대한 @capacitor-native-market의 구현 세부사항 @capgo/capacitor-네이티브 마켓 사용 native 기능을 위한 @capgo/capacitor-native-market 사용 방법