事の発端
iOSのtierに合わせる形でgoogle playのアプリ内アイテムの価格を修正したんです。
google playは皆さんご存じ、税抜きと税込みの価格を入れれるようになっててwallet側で消費税を設定しておけば、税抜き価格から税込価格を自動で計算して代入してくれるという便利機能があるんです。
で、税抜き価格を入れて、税込み価格を自動換算して、公開設定したところアプリが落ちる・・、という事態になりました。
落ちた原因
私の場合、アプリ内で、google playに接続してアイテムの表示名とか価格とか取ってくるようになってるんですが、価格をとってきたらlongにキャストしてるんです。
月にいくら買ったかとか計算したいから。
そこで型が合わないという理由で落ちてました。
解決策
1.とりあえず落ちたら困るのでdoubleでキャストする
2.自動換算機能は使わない(税込価格も手動で入力する)
その他
ストアから取得できる価格は2種類で、一つはキャストしやすいように数字の価格で計算用?のもの。今回キャストするときにアプリを落とした張本人です。
それと、表示用でしょうか。通貨単位記号とコンマが入った文字列があります。『¥9,800』という感じ。
表示だけなら後者を使うのも手です。¥記号が邪魔ですが・・・。
追記:2015.07.13
後から分かった部分ですが、課金のライブラリのバグでした。
OpenIABというUnityのライブラリを使っているのですが、そいつが(OpenIAB/SkuDetails.cs)Googleから価格の情報(price_amount_micros)を受け取ったのち、floatにキャストをしていて、そこで誤差が生じて小数点が発生していました。
Googleのみなさん疑ってごめんなさい。そしてOpenIABはバグ修正頼む。