質問: 初めて投稿します。 現在、Unity IAPを使ってアプリ内課金を製作しています。 そこで行き詰っている問題があり質問させていただきます。 ・UnityIAPのビルド設定を再度初期化またはプロダクトID等の設定を更新することは出来ないでしょうか。 やりたいこととしては、プロダクトIDなどをDBなどで管理し、動的にプロダクトの追加や削除などを行いたい。 問題になると思っているのは基本的に初期化をアプリ起動時に考えていますので遊んでくれているユーザーが長時間プレイしている際に最初に初期化した段階と長時間プレイしたあとの課金時でプロダクト情報に差異があった場合、最新の情報に更新したいのです。 どのようにすれば実現できるのかわからず途方に暮れています。。 どうかご解決方法を知っていらっしゃいましたらご教授お願い出来ませんでしょうか。 何卒宜しくお願い致します。
回答: UnityIAPの公式ガイド「Integrating Unity IAP In Your Game」をご覧ください。 「Making a Purchase Script」の項にあるサンプルスクリプト内で、 「public void InitializePurchasing()」が初期化処理(プロダクトIDの設定部)です。 ここをDBのデータを反映するように書き換えて、必要なタイミングで呼び直せばいいのではないでしょうか。 (試してないのでエラーが出る可能性はあります)