2013-02-22 13 views
8

アプリには、購入可能なアプリ内アイテムが含まれています。私はbilling APIを使用して、購入可能な商品のリストとその価格を検索します。 検索された価格は、の文字列で、通貨と価格の両方が含まれています(例: "$ 2.50")。Googleアナリティクスのアプリ内価格形式

今私も購入を追跡するためにGoogle Analytics APIを使用しています。価格を送信する場合、このAPIはとなり、パラメータはマイクロで表示されます。だから私は送るべきです(2.50 * 1000000)。

第1価格(Billing APIから取得)を第2価格(Analytics APIに送信する)に変換するAPIはありますか?

私は単純な文字列解析変換を自分で行うことができますが、私がそうすると予期せぬ事態が起こることを恐れています。たとえば、一部のロケールでは、価格には「。」ではなく「、」が含まれます。

編集

自然のソリューションは、 "$ 2.50" から2.50に変換したNumberFormatを使用することです。

Double price = NumberFormat.getCurrencyInstance().parse(priceStr).doubleValue(); 

しかし、Googleのプレイから取得価格の文字列の書式は、明らかに電話が置かれている国のロケールであるが、NumberFormatは、必ずしも同じではありません携帯電話のロケールを使用することになり...

+0

(注正味価格)これに対する解決策? – ashughes

答えて

1

公式には文書化されていませんが、請求APIは既にgetSkuDetails()レスポンスに必要なデータを提供しています。

priceフィールドのほかに、あなたはまた、次の取得:

price_currency_code ISO通貨コード

price_amount_micros ミクロスにおける製品価格:あなたが見つけることができた

+0

あなたはそれをどこから見ますか? getSkuDetails()は、mPriceメンバー(String)のみを持つオブジェクトを返します。 –

+1

Nevermind:これは、Inventoryオブジェクトによって返されたgetSkuDetails()を参照していないことに注意してください。 IabHelperではgetSkuDetails()を使用する必要があります。 –

関連する問題