Unity IAP(アプリ内課金)実装でつまずいたところ
Unityへのアプリ内課金を実装で躓いた
作成中のゲームアプリ「RoidChanDerby」にアプリ内課金を実装しようとしたところ、躓いたため備忘録として。
しかし、回避策が強引なため、あとあと問題があるかも。
UnityChannelがImportされない
UnityエディタのServices内から、IAPをEnableにし、DLL関係をimport。
ところがここでビルドしようとするとエラーが。。。
「Editor.dllが複数ある」
というエラーが。表示された。
importしただけで、この問題。
ネットで検索したところ、一度削除してと書かれてあったので
とりあえず、一度削除して、再度importするも現象変わらず。
エラー箇所を調べていくと、
このUnityChannelというものが見つからないとのこと。
ただ、ネットを調べるとやはり「Import」でUnityChannelもimportされるらしく、かなり困りました。
別アプリで確認
毎回そうなのですが、製作途中で問題に遭遇した時は、
最小単位のプロジェクトを別途用意して確認します。
すると。。。
別アプリでは、しっかりとUnityChannelがImportされています。
同じ操作だけど、入っているものが違うから(RoidChanDerbyの方はすでに色々作りこまれている)なのか、こういうタイプの問題は厄介です。
回避策
その後も、怪しそうなアセットを消したり、再Importを繰り返すも、問題解決せず。。
結局回避策としては、別プロジェクトで作成した「UnityChannel」フォルダをごっそりそのままこのプロジェクトにコピーすることで解決しました。
この操作が正しい気はしないので、後々問題にならなければいいのですが。。
また、調査中に発見したのですが、XiaomiSDKがimportされている場合も問題になりそうです。
PlayFabとの連携
課金実装でかなり時間を費やしたため、PlayFabとの連携(カタログ情報の取得)などは、次回まとまった時間が取れる時にやります。備忘録も書きます。
Googlplayのアプリ審査が長くなってから、課金システムの実機確認に時間がかかるのでつらい。。。
課金要素はやめようかな?