コンテンツにジャンプ

iOS サンドボックス テストの設定

GitHub

iOSのインアプリ購入テストには、App Store Connectとテストデバイスの設定が適切に構成されている必要があります。このガイドでは、サンドボックステストを開始するために必要なすべての情報をカバーしています。

前提条件

前提条件
  • Apple Developer Program会員資格
  • : 年間更新の有効な会員資格契約
  • : 銀行情報と税金情報を完了した「有料アプリケーション契約」に署名Xcode Project
  1. 有料アプリケーション契約に署名する

    App Store Connectに移動し、 契約、税金、銀行 を完了してください:

    • 有料アプリケーション契約に署名する
    • 銀行情報を追加する
    • 税金の書類を完了する

    Appleが情報を承認するのを待つ (24-48時間かかることがあります)。

  2. サンドボックステストユーザーを作成する

    App Store Connectに移動し、 ユーザーとアクセス > サンドボックステスター.

    クリックして + 新しいサンドボックステスターを作成します。

    重要ページ: バグバウティープログラムページ。役割: UIラベル。ページ: bug-bounty.astro。メッセージキー `bug_bounty_important_label` (バグバウティー重要ラベル)。

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

    iCloud:

  3. サンドボックステスターを作成

    テストデバイスを設定 (iOS 12+)

    iOS 12以降では、購入テストを行うためにiTunesアカウントからサインアウトする必要はありません。

    1. Open 設定
    2. タップ App Store
    3. 下部までスクロール
    4. タップ サンドボックスアカウント
    5. サンドボックステストアカウントでサインイン
  4. Xcodeプロジェクトの設定

    Xcodeプロジェクトには、以下の設定が必要です:

    バンドル識別子

    • 開発者センターの識別子と一致するようにしてください
    • App Store Connectの識別子と一致するようにしてください

    In-App Purchase Capability

    1. Xcodeでプロジェクトを選択してください
    2. 設定 署名 & 能力
    3. クリック + 能力
    4. 追加 アプリ内課金
  5. アプリ内課金商品を作成してください

    App Store Connect にアクセスし、App とイン アプリ購入商品 (サブスクリプション、消費可能アイテムなど) を作成してください。

    サンドボックス テストのために、商品は少なくとも「提出可能」状態でなければなりません。

  6. 実装をテストしてください。

    テスト デバイスでアプリをビルドして実行してください。購入を試みると、次のようになります:

    [環境: サンドボックス]

    この確認は、サンドボックス環境内で実行されていることを示し、実際の金銭的負担は発生しません。

重要な注意事項

重要な注意事項

サンドボックス環境の特徴

サンドボックス環境の特徴
  • 実際の請求は発生しませんサンドボックス モードではすべての購入が無料です
  • 高速化されたサブスクリプション: サブスクリプションの期間はテストのために短縮されます
    • 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. サブスクリプションが自動的に更新されます 自動更新 (加速された速度)

トラブルシューティング

トラブルシューティング

製品が読み込まれない:

  • App Store Connectのバンドル識別子が一致していることを確認する
  • 契約が署名され承認されていることを確認する
  • 製品が「提出可能」状態であることを確認する
  • 製品を作成した後2-3時間待つ

「iTunes Storeに接続できません」:

  • サンドボックスアカウントが正しく設定されていることを確認する
  • デバイスがインターネットに接続されていることを確認する
  • サンドボックスアカウントからログアウトし再度ログインする
  • アプリを再起動する

購入が静かに失敗している:

  • Xcodeコンソールでエラーメッセージを確認する
  • 購入機能の有効化を確認する
  • サンドボックスアカウントのメールアドレスが実際のApple IDではないことを確認する
  • 新しいサンドボックステストアカウントを作成する

レシート検証エラー:

  • テスト用にサンドボックスレシート検証エンドポイントを使用する
  • プロダクションエンドポイント: https://buy.itunes.apple.com/verifyReceipt
  • サンドボックスエンドポイント: https://sandbox.itunes.apple.com/verifyReceipt
  • native-purchasesプラグインは自動的にこの処理を行う

サブスクリプション期間が間違っている:

  • サブスクリプションはサンドボックスで加速されることを思い出す
  • 上記の変換表を使用して、期待される期間を確認する
  • サンドボックスではサブスクリプションが最大6回自動更新される

「このApple IDはまだiTunes Storeで使用されていません」:

  • 新しいサンドボックスアカウントの場合、通常のことです
  • 購入を続行してアカウントを有効化してください
  • 初回使用のみに発生します
  1. 複数のテストアカウントを作成してください 異なるテストシナリオ用
  2. すべてのサブスクリプション期間をテストしてください 動作を確認するために
  3. キャンセルと再契約のフローをテストしてください 動作を確認するために
  4. 受信証明書の検証 正しく動作する
  5. 購入の復元テスト 機能
  6. サブスクリプションのアップグレード/ダウン グレード 動作
  7. ネットワークの悪い条件でテスト

本番環境 vs. サンドボックス

「本番環境 vs. サンドボックス」
機能サンドボックス本番環境
実際の請求NoYes
サブスクリプション期間加速通常
自動更新制限6回無制限
キャンセル効果即時期間終了
受領のエンドポイントサンドボックスURL生産URL
テストアカウントのみはい日本語

追加リソース 詳しくは、公式のApple StoreKitドキュメント サンドボックステストについて

続けてiOSサンドボックステストの設定

「Configure iOS Sandbox Testing」から続けてください

あなたが使用している iOS サンドボックス テストの設定 ストアの承認と配布を計画するために使用している場合 Using @capgo/native-purchases Using @capgo/native-purchasesのネイティブ機能 @capgo/capacitor-アプリ内レビュー @capgo/capacitor-in-app-reviewの実装詳細 @capgo/capacitor-アプリ内レビューの使用 Using @capgo/capacitor-in-app-reviewのネイティブ機能 @capgo/capacitor-native-market @capgo/capacitor-native-marketの実装詳細 Capgoの@capgo/capacitor-native-market Capgoの@capgo/capacitor-native-marketを使用