ねぇねぇおくさん!UnityIAPで回線がつながっていないと無限リトライするらしいっすよ!どしましょうかねー
おはようございます。坂内です。
昨日暖かかったんですけどねー
今日は変わって、寒くなりました。
風邪にはお気を付け下さい。
ポケガ2のPVの曲が大体できてきてテンションだだ上がりっす!
その曲にあとは映像作ってもらって完成ですね!
どんな映像来るのかも楽しみっす!
ちなみにポケガ2の曲には歌も入ってます。
もちろんオリジナル!!
PV公開お楽しみに!!
で、技術的な話。
さっきTwitterでこんな話が出てました。

こわいっすねぇ・・・・
ってことで、オフラインの場合はIAP呼ばないって対応入れないといけないかもしれません。
いや、呼んだ結果タイムアウトさせての方が正しいのかな?
前者の場合、IAPでイニシャライズを呼ぶ前に、オンラインかどうかの判定を行えばいいんでしょうか。
以前にインターネット接続がされているかどうかの処理についてブログを書いていました。
http://halcyonsystemblog.blog.fc2.com/blog-entry-250.html
こちらで判定し、インターネットに繋がっていない場合は閉じる処理等をすればいいかもしれません。
後者のタイムアウトについては、InitializePurchasingメソッドの最後にタイムアウト用のメソッドを5秒毎とかに呼んであげる?
呼んであげる先のメソッドでは、リターンフラグを見てタイムアウトの判定する。
リターンフラグが立っていたら、何もしない。
OnInitializedメソッドと、OnInitializeFailedメソッドの中ではリターンフラグを立てて上げる。
でも、イニシャライズを呼ぶ直前に接続確認しとけば、そのあとで引っかかることなさそうだけど、どうなんでしょう?
こういうのはどこまで対応すればいいんでしょうかねぇ。
UnityIAPのイニシャライズって、課金画面を開いた時に行い、そのあと選択したアイテムをBuyProductIDとかのメソッドで買うと思うんですが(メソッドとかについては、この間のUnityIAPの話参照)、画面を開いた時はイニシャライズ成功していてもその後で回線切れた場合は、BuyProductIDでまた無限リトライになっちゃうんですかね・・・・・
だとすると、BuyProductIDの始めでも接続確認必要だったり?
変に無限リトライ中に通常処理に戻して、再度買われた場合とか、無限リトライ中にもう一度BuyProductIDが投げられて、重複で買っちゃうことになりそうですもんね。
基本的には回線のいいところでゲーム内アイテムの課金とかして頂ければいいのですが、そこはどうしても難しいですもんねー
で、エラーでたのに2回分買ったことになった!金返せ!★1って言われるんですよね・・・・
課金周りは毎回怖くてびくびくしています!!
Adfully+CaytoのアイテムSTOREも4月ですし・・・どうしたものか・・・・
ってことで、こうすればいいよ!って案あったら教えてください!
では、アデュ~ノシ
昨日暖かかったんですけどねー
今日は変わって、寒くなりました。
風邪にはお気を付け下さい。
ポケガ2のPVの曲が大体できてきてテンションだだ上がりっす!
その曲にあとは映像作ってもらって完成ですね!
どんな映像来るのかも楽しみっす!
ちなみにポケガ2の曲には歌も入ってます。
もちろんオリジナル!!
PV公開お楽しみに!!
で、技術的な話。
さっきTwitterでこんな話が出てました。

こわいっすねぇ・・・・
ってことで、オフラインの場合はIAP呼ばないって対応入れないといけないかもしれません。
いや、呼んだ結果タイムアウトさせての方が正しいのかな?
前者の場合、IAPでイニシャライズを呼ぶ前に、オンラインかどうかの判定を行えばいいんでしょうか。
以前にインターネット接続がされているかどうかの処理についてブログを書いていました。
http://halcyonsystemblog.blog.fc2.com/blog-entry-250.html
こちらで判定し、インターネットに繋がっていない場合は閉じる処理等をすればいいかもしれません。
後者のタイムアウトについては、InitializePurchasingメソッドの最後にタイムアウト用のメソッドを5秒毎とかに呼んであげる?
呼んであげる先のメソッドでは、リターンフラグを見てタイムアウトの判定する。
リターンフラグが立っていたら、何もしない。
OnInitializedメソッドと、OnInitializeFailedメソッドの中ではリターンフラグを立てて上げる。
でも、イニシャライズを呼ぶ直前に接続確認しとけば、そのあとで引っかかることなさそうだけど、どうなんでしょう?
こういうのはどこまで対応すればいいんでしょうかねぇ。
UnityIAPのイニシャライズって、課金画面を開いた時に行い、そのあと選択したアイテムをBuyProductIDとかのメソッドで買うと思うんですが(メソッドとかについては、この間のUnityIAPの話参照)、画面を開いた時はイニシャライズ成功していてもその後で回線切れた場合は、BuyProductIDでまた無限リトライになっちゃうんですかね・・・・・
だとすると、BuyProductIDの始めでも接続確認必要だったり?
変に無限リトライ中に通常処理に戻して、再度買われた場合とか、無限リトライ中にもう一度BuyProductIDが投げられて、重複で買っちゃうことになりそうですもんね。
基本的には回線のいいところでゲーム内アイテムの課金とかして頂ければいいのですが、そこはどうしても難しいですもんねー
で、エラーでたのに2回分買ったことになった!金返せ!★1って言われるんですよね・・・・
課金周りは毎回怖くてびくびくしています!!
Adfully+CaytoのアイテムSTOREも4月ですし・・・どうしたものか・・・・
ってことで、こうすればいいよ!って案あったら教えてください!
では、アデュ~ノシ
Category: 開発日記(Unity)
« 【Unity】Time.timeScaleに影響しないunscaledDeltaTimeとかあるんですねぇ・・・ | 【Unity】UnityIAPでGooleとAppleで設定した金額情報とかの取得 »
コメント
| h o m e |