開発者コンソール

Appstore請求サービス対応定期購入型アイテム

Appstore請求サービス対応定期購入型アイテム

Appstore請求サービス対応SDKを使用してアプリ内に定期購入型アイテムをセットアップするには、このページを参考にしてください。

開発者コンソールで定期購入型アイテムを追加する方法

アプリに定期購入型アイテムを追加するには、まず開発者コンソールで定期購入プランを作成する必要があります。定期購入型アイテムのセットアップ方法の詳細については、単一のアプリ内課金(IAP)アイテムを作成・申請する方法を参照してください。

定期購入型アイテムをセットアップするときは、次の情報を用意してください。

データ 説明
定期購入型アイテムのタイトル 定期購入型アイテムのタイトルを表す文字列。
定期購入型アイテムのSKU 定期購入型アイテムのIDとなる一意の文字列。このSKUは、期間SKUの親SKUとも呼ばれます。
説明と画像 定期購入型アイテムの表示タイトル、説明、画像。
定期購入型アイテムの期間 ユーザーに提供される購入期間。期間は常に定期購入型アイテムのSKUで定義されます。各期間には固有のSKUと期間があります。
定期購入型アイテムの期間のデータ
定期購入型アイテムの期間(単に期間とも呼ばれます) 定期購入型アイテムの期間は購入日から始まります。有効な値は、[毎週][隔週][毎月][隔月][3か月ごと][半年ごと][毎年] です。
SKU(期間SKUとも呼ばれます) この定期購入型アイテムの期間を一意に識別する、期間のSKU。
無料体験 (任意)定期購入型アイテムの無料体験期間。有効な値は、[なし](無料体験なし)、[7日][14日][1か月][2か月][3か月] です。
価格 (任意)定期購入型アイテムの期間の価格。基準価格を設定して、ほかのマーケットプレイスの価格を開発者コンソールに自動的に計算させることができます。または、すべてのマーケットプレイスの価格を手動で設定することもできます。

サンプル定期購入プラン

ここでは、無料オプションとプレミアムオプションを提供するアプリのデータの例を示します。無料オプションは基本的な機能を提供し、プレミアムオプションは限定特典を提供します。プレミアム機能にアクセスするには、ユーザーが有効な定期購入型アイテムを所有している必要があります。定期購入型アイテムには次の2つの期間があります。

  • 月額1.99 USDの月単位のプラン。
  • 年額9.99 USDの年単位のプラン。このプランには7日間の無料体験も付いています。

このオファーを開発者コンソールでモデル化するには、以下の詳細を含む定期購入プランを作成します。

  • 定期購入型アイテムのSKU: "com.example.sampleapp.premium"
    このSKUの名前は、プレミアム定期購入型アイテムのSKUであることを示しています。
  • 定期購入型アイテムのタイトル: "Premium Subscription"
  • 概要: "This is the premium subscription.Buy it to access exclusive features."
  • 定期購入型アイテムの期間: この定期購入型アイテムには2つの期間があります。1つは月単位、もう1つは年単位です。
    • 月単位の期間:
      1. 定期購入型アイテムの期間: 毎月
      2. SKU: "com.example.sampleapp.premium.monthly"
      3. 無料体験: なし
      4. 価格: 1.99 USD
    • 年単位の期間:
      1. 定期購入型アイテムの期間: 毎年
      2. SKU: "com.example.sampleapp.premium.yearly"
      3. 無料体験: 7日間
      4. 価格: 9.99 USD

  • 年単位の期間には7日間の無料体験期間があります。
  • 月単位の期間には無料体験はありません。
  • 月単位の期間と年単位の期間のSKUは互いに異なり、定期購入型アイテムのSKUとも異なります。

定期購入型アイテムの詳細をアプリに追加する方法

開発者コンソールで定期購入型アイテムをセットアップしたら、定期購入型アイテムの詳細をアプリに追加する必要があります。そのためには、開発者コンソールで作成した定期購入型IAPアイテムをJSONファイルとしてダウンロードし、そのファイルをアプリのassetsフォルダに追加します。ファイルをダウンロードするには、次の手順を実行します。

  1. アプリの [アプリ内課金(IAP)アイテム] タブに移動します。
  2. [IAPをエクスポート] > [JSON] を選択します。
  3. [OK] をクリックして確定します。
  4. ファイルが生成されるまで待ちます。準備ができると、ファイルをダウンロードするためのオプションが表示されます。
  5. JSONファイルをダウンロードします。

ファイルをダウンロードしたら、それをコピーしてアプリのassetsフォルダに貼り付けます。Amazonアプリストアは、このファイルを使用して親の定期購入型アイテムとその期間SKUとの関連付けを確立します。

次の例は、親SKUが"com.example.sampleapp.premium"で、期間SKUとして"com.example.sampleapp.premium.monthly"と"com.example.sampleapp.premium.yearly"を含む定期購入プランに基づくJSONを示しています。

{
    "com.example.sampleapp.premium.monthly": {
        "smallIconUrl": "http://",
        "title": "Premium Subscription",
        "itemType": "SUBSCRIPTION",
        "price": 0.0,
        "description": "This is premium subscription.Buy it to access exclusive features.",
        "languageTitleMap": {
            "US": "Premium Subscription"
        },
        "languageDescriptionMap": {
            "US": "Buy this subscription to get Infinite Gas in the app"
        },
        "currencyPriceMap": {
            "US": 0.0
        },
        "subscriptionParent": "com.example.sampleapp.premium",
        "term": "Monthly"
    },
    "com.example.sampleapp.premium.yearly": {
        "smallIconUrl": "http://",
        "title": "Premium Subscription",
        "itemType": "SUBSCRIPTION",
        "price": 0.0,
        "description": "This is premium subscription.Buy it to access exclusive features.",
        "languageTitleMap": {
            "US": "Infinite Gas Subscription"
        },
        "languageDescriptionMap": {
            "US": "Buy this subscription to get Infinite Gas in the app"
        },
        "currencyPriceMap": {
            "US": 0.0
        },
        "subscriptionParent": "com.example.sampleapp.premium",
        "term": "Annually"
    }
}

定期購入プランの移植

2022年5月に、Googleでの定期購入の処理方法が更新されました。詳細については、Play ConsoleヘルプドキュメントのGoogle Play Consoleでの定期購入に関する最近の変更を参照してください。従来の定期購入型アイテムを使用するアプリでは、2022年5月の変更前のAPIと購入フローが使用されます。このフローでは、querySkuDetailsAsync()メソッドを使用してSKUの詳細を取得した後、そのSKUの詳細を使用したlaunchBillingFlow()メソッドを呼び出します。この定期購入モデルでは、定期購入プランの期間は 1 つのみです。

2022年5月以降に提供されているAPIと購入フローを使用するアプリでは、queryProductDetailsAsync()を使用して商品の詳細を取得した後、商品の詳細とオファートークンを使用するlaunchBillingFlow()メソッドを呼び出します。この定期購入プランモデルでは、定期購入プランプランに複数の期間を設定できます。詳細については、Androidデベロッパードキュメントの下位互換性のあるPlay Billing Libraryのアップグレードを参照してください。

Appstore請求サービス対応APIにはquerySkuDetailsAsync()メソッドとqueryProductDetailsAsync()メソッドが含まれているため、どちらのフローも選択できます。


Last updated: 2023年10月27日