ブログ
これまでに経験してきたプロジェクトで気になる技術の情報を紹介していきます。
端末でのサマータイム確認でログインできない
Yamanaka
4 years
開発中のゲームで、サマータイムの確認をしようとアンドロイド端末の時間を過去に変更してログインしようとするとログイン出来ませんでした。
結論から言いますと、確認用に課金処理を抜いたROMを作成したら確認可能でした。
パソコンにつないでログを確認すると
I/UnityIAP(32060): Purchase history response: 2
I/UnityIAP(32060): getPurchaseHistory() failed: 2:Unknown
I/UnityIAP(32060): onQueryInventoryFinished: false
I/UnityIAP(32060): Error query Purchase History (response: 2:Unknown)
I/UnityIAP(32060): Failed to Query inventory. UnityIAP will automatically retry in 10000ms
I/UnityIAP(32060): QueryInventory: 16
I/UnityIAP(32060): invoking callback
どうやら UnityIAPで課金履歴の取得で失敗していたようです。 履歴を取れないから失敗するのならば、実際の時間より少し前なら問題ないのか確認するために、2週間前にしてみたらその場合はログイン出来ました。
履歴が取れないほど過去に設定したら問題あるのならば未来にしたらどうかと思い、1カ月後にしてログイン出来るか確認してみると、ログイン出来ました。 ならば3カ月後と試してみると、ログイン出来ませんでした。
ログを確認してみると、
I/UnityIAP(8323): getSkuDetails() failed: 2:Unknown
I/UnityIAP(8323): onQueryInventoryFinished: false
I/UnityIAP(8323): Error refreshing inventory (querying prices of items). (response: 2:Unknown)
I/UnityIAP(8323): Failed to Query inventory. UnityIAP will automatically retry in 40000ms
I/UnityIAP(8323): QueryInventory: 16
I/UnityIAP(8323): invoking callback
どうやらアイテム情報の取得に失敗しているみたいですね。
結論といたしまして、実機の時間を実際より大きく変える場合はUnityIAPの処理を待たない専用ROMを作成する必要がありますね。
以上 山中がお伝えしました。またお会いしましょう!
端末でのサマータイム確認でログインできない
端末でのサマータイム確認でログインできない
2020-11-26 09:04:09
2021-08-18 04:14:37
コメントはありません。