メイン コンテンツにジャンプ

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

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

  • Apple Developer Program: 年間更新の有効な会員資格
  • : 銀行情報と税金情報を完了した「有償アプリケーション契約」に署名: 「アプリケーション契約」に署名
  • Xcode Project: Configured with proper bundle identifier and capabilities
  1. アプリケーションに対する支払い契約を署名する

    App Store Connectで 契約、税金、銀行 を選択し、以下を完了してください:

    • アプリケーションに対する支払い契約を署名する
    • 銀行情報を追加してください
    • 税関納税書類を完了してください

    Appleが情報を承認するのを待ってください (24-48時間かかる場合があります)。

  2. サンドボックステストユーザーを作成してください

    App Store Connectに移動してください ユーザーとアクセス > サンドボックステストユーザー.

    新しいサンドボックステストユーザーを作成するボタンをクリックしてください + 重要

    : Apple IDに既に紐づいていないメールアドレスを使用してください。メールアリセスを使用できます。Gmail:

    • iCloud: youremail+test@gmail.com
    • button youremail+test@icloud.com

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

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

    iOS 12 以降では、iTunes アカウントからサインアウトする必要がなくなりました。購入テストを実行するために。

    iOS デバイスで:

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

    Xcodeプロジェクトには、以下の条件を満たしている必要があります。

    Bundle Identifier

    • 開発者センターの識別子と一致する必要があります。
    • App Store Connectの識別子と一致する必要があります。

    In-App Purchase Capability

    1. Xcodeでプロジェクトを選択
    2. プロジェクトを選択 Signing & Capabilities
    3. クリック 機能拡張
    4. 追加 インアプリ購入
  5. インアプリ購入商品を作成

    アプリストア接続に移動し、インアプリ購入商品を作成してください (サブスクリプション、消耗品など)。

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

  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に接続できません」:

サンドボックスアカウントが正しく設定されていることを確認してください

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

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

  • Xcodeコンソールでエラーメッセージを確認してください
  • In-App Purchase機能が有効になっていることを確認してください
  • サンドボックスアカウントのメールアドレスが実際のApple IDではありませんか?
  • 新しいサンドボックステストアカウントを作成してみてください

レシート検証エラー:

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

間違ったサブスクリプション期間:

  • サブスクリプションはサンドボックス環境では加速されます
  • 上の変換表を使用して予想される期間を確認してください
  • サブスクリプションはサンドボックス環境では最大 6 回自動再生されます

“This Apple ID has not yet been used in the iTunes Store”:

  • この Apple ID はまだ iTunes Store で使用されていません
  • 新しいサンドボックス アカウントの場合、これは通常のことです
  • 購入を続行してアカウントを有効化してください

最初の使用時のみ発生します

ベスト プラクティス
  1. 「ベスト プラクティス」のセクションです さまざまなテストシナリオ
  2. すべてのサブスクリプション期間をテストする 動作を確認するために
  3. キャンセルと再契約のフローをテストする フロー
  4. 受け取り確認の検証 正しく動作することを確認する
  5. 購入の復元をテストする 機能
  6. サブスクリプションのアップグレード/ダウン グレードをチェックする 動作
  7. 不良ネットワーク条件下でテストする

生産環境 vs. サンドボックス環境

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

追加リソース

追加リソース

詳細は 公式のApple StoreKitドキュメント サンドボックステストについて