このドキュメントでは、Google Play Billing Library(PBL)6 または 7 から PBL 8 に移行する方法と、新しいオプションの定期購入機能を統合する方法について説明します。
バージョン 8.0.0 の変更点をすべて網羅したリストについては、リリース ノートをご覧ください。
概要
PBL 8 には、既存の API の改善と、以前に非推奨となった API の削除が含まれています。このバージョンのライブラリには、1 回限りのアイテム用の新しい API も含まれています。
PBL アップグレードの下位互換性
PBL 8 に移行するには、リリースノートとこの移行ガイドで後述するように、アプリから既存の API 参照の一部を更新または削除する必要があります。
PBL 6 または 7 から PBL 8 にアップグレードする
PBL 6 または 7 から PBL 8 にアップグレードする手順は次のとおりです。
アプリの
build.gradleファイルで、Play Billing Library の依存関係のバージョンを更新します。dependencies { def billingVersion = 8.0.0 implementation "com.android.billingclient:billing:$billingVersion" }(PBL 6 から PBL 8 へのアップグレードにのみ適用されます)。アプリで定期購入関連の API の変更を処理します。
次の表に、PBL 8 で削除された定期購入関連の API と、アプリで使用する必要がある代替 API を示します。
PBL 8 で削除された以前に非推奨となった API 使用する代替 API setOldSkuPurchaseToken setOldPurchaseToken setReplaceProrationMode setSubscriptionReplacementMode setReplaceSkusProrationMode setSubscriptionReplacementMode queryProductDetailsAsyncメソッドの実装を更新します。ProductDetailsResponseListener.onProductDetailsResponseメソッドのシグネチャが変更されたため、queryProductDetailsAsyncの実装でアプリを変更する必要があります。詳細については、 購入可能なアイテムを表示するをご覧ください。削除された API を処理します。
からのアップグレード
PBL 8 では、次の表に示す API はサポートされなくなりました。 実装でこれらの削除された API のいずれかを使用している場合は、 表を参照して対応する代替 API を確認してください。
PBL 8 で削除された以前に非推奨となった API 使用する代替 API queryPurchaseHistoryAsync API 購入履歴のクエリをご覧ください querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases()(パラメータのない API) enablePendingPurchases(PendingPurchaseParams params)
非推奨の enablePendingPurchases() は、enablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build())と機能的に同等です。queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync BillingClient.Builder.enableAlternativeBilling BillingClient.Builder.enableUserChoiceBilling AlternativeBillingListener UserChoiceBillingListener AlternativeChoiceDetails UserChoiceDetails からのアップグレード
次の表に、PBL 8 で削除された API と、アプリで使用する必要がある対応する代替 API を示します。
PBL 8 で削除された以前に非推奨となった API 使用する代替 API queryPurchaseHistoryAsync API 購入履歴のクエリをご覧ください querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases()(パラメータのない API) enablePendingPurchases(PendingPurchaseParams params)
非推奨の enablePendingPurchases() は、enablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build())と機能的に同等です。queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync (推奨)サービスの自動再接続を有効にします。
サービスが切断されているときに API 呼び出しが行われた場合、Play Billing Library はサービス接続の自動再確立を試行できます。詳細については、 サービスの自動再接続を有効にするをご覧ください。
オプションの変更。
プリペイド プランの保留中の購入をサポートします。詳細については、 定期購入と保留中のトランザクションを処理するをご覧ください。
仮想分割払いの定期購入。詳細については、 分割払いの定期購入の統合をご覧ください。