Flutter SDKでの購入のトラブルシューティング
このガイドでは、Flutter SDKで手動購入を実装する際によく発生する問題の解決方法を説明します。
makePurchaseは正常に呼び出されたが、プロファイルが更新されない
問題: makePurchase メソッドが正常に完了したにもかかわらず、ユーザーのプロファイルとサブスクリプションのステータスがAdaptyで更新されません。
原因: これは通常、Google Play ストアのセットアップが不完全またはコンフィグレーションに問題があることを示しています。
解決策: 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 ストアからbilling unavailableエラーが返されています。
原因: このエラーはAdaptyとは無関係です。デバイスで課金が利用できないことを示すGoogle Play課金ライブラリのエラーです。
解決策: このエラーはAdaptyとは無関係です。Play Storeのドキュメントで詳細を確認できます: Handle BillingResult response codes | Play Billing | Android Developers。
makePurchasesCompletionHandlersが見つからない
問題: makePurchasesCompletionHandlers が見つからないという問題が発生しています。
原因: これは通常、サンドボックステストの問題に関連しています。
解決策: 新しいサンドボックスユーザーを作成して再試行してください。サンドボックス関連の購入完了ハンドラーの問題はこれで解決することが多いです。
その他の問題
問題: 上記で説明していないその他の購入関連の問題が発生しています。
解決策: 必要に応じて、移行ガイドを使用してSDKを最新バージョンに移行してください。新しいSDKバージョンでは多くの問題が解決されています。