このドキュメントでは、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 はサービス接続の自動再確立を試みることができます。詳細については、サービスの自動再接続を有効にするをご覧ください。
オプションの変更。
プリペイド プランの保留中の購入をサポートします。詳しくは、定期購入と保留中の取引を処理するをご覧ください。
仮想分割払いのサブスクリプション。詳しくは、分割払いサブスクリプションの統合をご覧ください。