Android SDKでの購入に関するトラブルシューティング
このガイドでは、Android SDKで手動購入を実装する際によく発生する問題の解決方法を説明します。
makePurchaseが正常に完了してもプロファイルが更新されない
問題: makePurchase メソッドが正常に完了するにもかかわらず、ユーザーのプロファイルとサブスクリプション状態がAdaptyで更新されない。
原因: 通常、Google Play Storeのセットアップが不完全であるか、設定に問題があることを示しています。
解決策: Google Play のセットアップ手順がすべて完了しているか確認してください。
makePurchaseが2回呼び出される
問題: 同じ購入に対して makePurchase メソッドが複数回呼び出されている。
原因: UIの状態管理の問題や、ユーザーの素早い操作によって購入フローが複数回トリガーされる場合に発生します。
解決策: Google Play のセットアップ手順がすべて完了しているか確認してください。
オブザーバーモードでのAdaptyError.cantMakePayments
問題: オブザーバーモードで makePurchase を使用すると AdaptyError.cantMakePayments が発生する。
原因: オブザーバーモードでは、Adaptyの makePurchase メソッドを使用せず、購入処理はご自身で行う必要があります。
解決策: 購入に makePurchase を使用している場合は、オブザーバーモードをオフにしてください。makePurchase を使用するか、オブザーバーモードで自前の購入処理を行うか、どちらか一方を選択してください。詳細はオブザーバーモードの実装を参照してください。
Adaptyエラー: (code: 103, message: Play Market request failed on purchases updated: responseCode=3, debugMessage=Billing Unavailable, detail: null)
問題: Google Play Storeから課金不可エラーが返ってくる。
原因: このエラーはAdaptyとは無関係です。デバイスで課金が利用できないことを示すGoogle Play Billing Libraryのエラーです。
解決策: このエラーはAdaptyとは無関係です。Play Storeのドキュメントで詳細を確認できます: Handle BillingResult response codes | Play Billing | Android Developers。
makePurchasesCompletionHandlersが見つからない
問題: makePurchasesCompletionHandlers が見つからないというエラーが発生する。
原因: 通常、サンドボックステストに関連する問題です。
解決策: 新しいサンドボックスユーザーを作成して再試行してください。これによりサンドボックス関連の購入完了ハンドラーの問題が解決されることがほとんどです。
その他の問題
問題: 上記に該当しない購入関連の問題が発生している。
解決策: 必要に応じて移行ガイドを参照し、SDKを最新バージョンに移行してください。多くの問題は新しいSDKバージョンで解決されています。