我用 Play Billing Library
我有两个 subscriptions
一三个月。对于 3
月订阅,我想显示 1
的价格月。
例如,1
月订阅为 $1,50
和 3
月订阅为 $3
($1
表示 1
月)。但我对货币有一些问题。
这是 code:
long priceAmountMicros = skuDetails.getPriceAmountMicros(); //3000000
String priceCurrency = skuDetails.getPriceCurrencyCode(); //USD
float priceFloat = (float)priceAmountMicros / 3 / 1000000; //1
String price = new DecimalFormat("#0.00").format(priceFloat);
Currency currency = Currency.getInstance(priceCurrency);
String symbolCurrency = currency.getSymbol();//$
textView.setText(price + " " + symbolCurrency); //1.00 $ or 70.00 руб
该代码几乎可以正常工作。 美元 转换为 $ . 欧元 转换为 $ 和别的。某些货币存在一些问题,例如,俄罗斯货币不起作用。 卢布 转换为 руб ,但我希望 ₽ 有一种获取
price:
的标准方法。String price = skuDetails.getPrice();//3 $ or 210 ₽
难道我做错了什么?请问你能帮帮我吗?
最佳答案
您可以使用 java.util 包中的 Currency 类
Currency.getInstance(sku.priceCurrencyCode).symbol
会给你货币代码的符号
关于android - 如何从 Play 结算库中获取货币符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62956109/