Unity SDKでの購入に関するトラブルシューティング
このガイドでは、Unity 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のドキュメントで詳細を確認できます: BillingResultレスポンスコードの処理 | Play Billing | Android Developers。
makePurchasesCompletionHandlersが見つからない
問題: makePurchasesCompletionHandlers が見つからないという問題が発生している。
原因: 通常、サンドボックステストに関連する問題です。
解決策: 新しいサンドボックスユーザーを作成して再試行してください。サンドボックス環境での購入完了ハンドラーの問題はこれで解決することが多いです。
その他の問題
問題: 上記に該当しない購入関連の問題が発生している。
解決策: 必要に応じてマイグレーションガイドを使用してSDKを最新バージョンに移行してください。多くの問題は新しいSDKバージョンで解決されています。