課金処理をかんたんに実装できるUnityアセット「Simple IAP System」の自分用メモです。
Google Keyって?
IAPManagerの「Google Key」という項目は、Google Play Console(旧)の、開発ツール>サービスとAPI画面にある「ライセンスとアプリ内課金」の「このアプリのライセンス用鍵」をコピペします。
購入ボタン押すと「Add an active IAPButton to process this purchase…」みたいなエラーが出る
レアケースと思いますが、Simple IAP Systemのサンプルシーンでは問題なくフェイク課金承認画面が出ますが、自前のシーンを通して課金ボタンを押そうとすると上記のエラーが出てしまいます。
トレースしてみると、なぜか自前のシーンを通している時だけIAPManager.PurchaseProduct()からCodelessIAPStoreListener.ProcessPurchase()に飛んでいました。
私の場合、このアセットを試す前にCodeless IAPを試しており、IAPカタログに一部のテスト用商品が残っていたせいで、この現象が発生していたようです。
GameObject>Unity IAP>IAP Buttonを作成し、IAP Catalogボタンを押し、カタログ内の商品をすべて消します。そしてIAP Buttonを削除するとこのエラーは出なくなりました。
Clear DatabaseでPlayerPrefsが全クリアされる
Clear Databaseを押すとローカルの全ユーザデータが消されます。
SISのデータを消したいけれどもPlayerPrefsのユーザデータを全部消されたくない場合は、Advanced Playerprefs Windowアセットを使ってこのSISのデータだけ消せばOKです。
細かい解説
添付PDFの通りにやるだけで問題無いと思いますが、ユーザ登録してhttps://www.rebound-games.com/forum/topic/1743/guide-google-playこの購入者用フォーラムの各トピックを見ていくとより実践的な内容がわかります。
固定トピックになっているものは開発者側からのHowToの内容になっています。
コメント
まさに「Add an active IAPButton to process this purchase…」みたいなエラーで困っておりました。
おかげさまで解決しました。本当にありがとうございます。
Simple iap V2 がでたのでそちらの解説もしてほしいです
2にアプデすることになったのでしばらくお待ちください!
http://patio.work/archives/2274
マニュアルの翻訳とSIS1からのアプデについてのみですが、記事できました!