android - 如何从 Play 结算库中获取货币符号

标签 android in-app-billing

我用 Play Billing Library我有两个 subscriptions一三个月。对于 3月订阅,我想显示 1 的价格月。
例如,1月订阅为 $1,503月订阅为 $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/

相关文章:

android - Flutter:如何暂停和重新启动 `Stream` 监听器?

java - 线程联网导致空指针异常

java - 检查对象是否为空

android - 如何使用Firebase数据库和Firebase通知为聊天应用程序构建通知系统

android - 在我的应用程序中使用自签名证书

Android 应用内结算 v3 : "Can' t perform operation: queryInventory"

android - 如何在应用计费 API V3 中使用 Google 的随机数

android - 计费客户端 : In-app billing API version 3 is not supported on this device

android - IAP 在 alpha 版本中发布到 play store 后无法正常工作

安卓应用内计费 : what is the "developer payload" and how the "Buy" button works?