AptoideBillingClient
AptoideBillingClient は、アプリケーションでアプリ内課金を処理するための主要なインターフェースです。これは、購入のクエリ、製品詳細の取得、購入の消費、課金フローの管理、およびアプリ更新などのアプリ関連操作の実行といった操作を行うためのわかりやすい方法を提供します。
AptoideBillingClient を使用するには、アプリケーション内で単一のインスタンスを作成します。まず、接続ステータスを追跡するリスナーを渡して、startConnection メソッドで初期化します。接続が確立されると、アプリ内課金タスクを処理するメソッドを安全に呼び出すことができます。
アプリケーションが終了する際には、リソースを解放してメモリリークを防ぐために endConnection を呼び出してください。ベストプラクティスとして、クライアントは Application の onCreate メソッドでインスタンス化し、onDestroy でクリーンアップを確実に行ってください。
AptoideBillingClient は同期操作と非同期操作の両方をサポートしており、UI スレッドまたはバックグラウンドスレッドでタスクを実行する柔軟性を提供します。ANR を回避するために、バックグラウンドスレッドでの実行が必要なメソッドには特に注意してください。
一貫性のない動作を避けるため、課金サービスに関連する操作を実行する前に、必ず isReady メソッドを使用してクライアントの準備状態を確認してください。
これらのガイドラインに従うことで、アプリケーションでスムーズかつ効率的なアプリ内課金統合を実現できます。
パブリックメソッド
consumeAsync
void consumeAsync(ConsumeParams consumeParams, ConsumeResponseListener consumeResponseListener)
購入を消費し、トランザクションを確定します。消費されていない購入は返金につながる場合があります。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
| consumeParams | ConsumeParams | 消費する購入のパラメータ。 |
| consumeResponseListener | ConsumeResponseListener | 消費操作のステータスを受け取るリスナー。 |
endConnection
void endConnection()
Billing クライアントへの接続を終了します。
getReferralDeeplink
ReferralDeeplink getReferralDeeplink()
アプリケーションがインストールされた正しいストアへのディープリンクを取得します。
このメソッドはメイン/UI スレッドで呼び出してはいけません。
戻り値
リクエスト結果の詳細を含む ReferralDeeplink。
isAppUpdateAvailable
boolean isAppUpdateAvailable()
アプリケーションの更新が利用可能かどうかを確認します。
戻り値
更新が利用可能かどうかを指定するブール値。
isFeatureSupported
BillingResult isFeatureSupported(FeatureType feature)
要求された機能が、Billing SDK の現在のバージョン、Billing サービス、またはユーザー構成(例: Device)でサポートされているかどうかを確認します。
このメソッドを使用して、サポートされている機能を検証し、アプリケーションに動的なロジックを適用します。たとえば、SUBSCRIPTIONS がサポートされているかどうかを検証し、サブスクリプション製品のデータを要求してユーザーに表示するために使用します。
戻り値
受信したレスポンスの BillingResult 型の課金結果。要求された機能がサポートされていない場合は FEATURE_NOT_SUPPORTED(-2)を返し、機能がサポートされている場合は OK(0)を返します。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
| feature | FeatureType | 要求する機能。 |
isReady
boolean isReady()
Billing クライアントがリクエストを処理する準備ができているかどうかを確認します。
戻り値
クライアントが準備できているかどうかを指定するブール値。
launchAppUpdateDialog
void launchAppUpdateDialog(Context context)
更新が利用可能な場合に、アプリケーションの更新をユーザーに促すダイアログを表示します。ユーザーが同意すると、アプリケーションがインストールされたストアのページが起動されます。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
| context | Context | アプリケーションコンテキスト。 |
launchAppUpdateStore
void launchAppUpdateStore(Context context)
アプリケーションがインストールされたストアを開き、そのアプリケーションのページへ移動します。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
| context | Context | アプリケーションコンテキスト。 |
launchBillingFlow
BillingResult launchBillingFlow(Activity activity, BillingFlowParams billingFlowParams)
指定された製品の課金フローを起動します。
このメソッドはメイン/UI スレッドで呼び出してはいけません。
戻り値
受信したレスポンスの BillingResult 型の課金結果。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
| activity | Activity | 課金フローの起動に使用するアクティビティ。 |
| billingFlowParams | BillingFlowParams | 課金フローのパラメータ。 |
queryProductDetailsAsync
void queryProductDetailsAsync(QueryProductDetailsParams queryProductDetailsParams, ProductDetailsResponseListener productDetailsResponseListener)
指定された QueryProductDetailsParams に基づいて、Aptoide Connect プラットフォームで利用可能な ProductDetails を非同期で取得し、ProductDetailsResponseListener に送信します。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
| queryProductDetailsParams | QueryProductDetailsParams | クエリする製品のパラメータ。 |
| productDetailsResponseListener | ProductDetailsResponseListener | 製品のクエリ結果が送信されるリスナー。 |
queryPurchasesAsync
void queryPurchases(QueryPurchasesParams queryPurchasesParams, PurchasesResponseListener purchasesResponseListener)
指定された QueryPurchasesParams に基づいて、ユーザーに関連付けられた購入を非同期で取得し、PurchasesResponseListener に送信します。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
| queryPurchasesParams | QueryPurchasesParams | クエリする購入のパラメータ。 |
| purchasesResponseListener | PurchasesResponseListener | 購入のクエリ結果が送信されるリスナー。 |
startConnection
void startConnection(AptoideBillingClientStateListener listener)
Billing クライアントへの接続を初期化します。
パラメータ
| 名前 | 型 | 説明 |
|---|---|---|
| listener | AptoideBillingClientStateListener | 接続状態の変化を監視するリスナー。 |