以美元获取应用内商品价格 - 而不是用户的本地硬币

时间:2014-06-02 08:28:32

标签: ios localization in-app-purchase skproduct

对于分析和收集数据,我想以美元的价格获得SKProduct的价格。

我用来向用户显示价格的基本代码是:

   _priceFormatter = [[NSNumberFormatter alloc] init];
   [_priceFormatter setFormatterBehavior:NSNumberFormatterBehavior10_4];
   [_priceFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];

   [_priceFormatter setLocale:inAppProduct.priceLocale];
   inAppItemString = [_priceFormatter stringFromNumber:inAppProduct.price];

此代码为我提供了用户应使用当地硬币支付的实际价格

我尝试将本地设置为en_US,但我的价格与以前相同,只有$ :) 这是我改变尝试这个:

   NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
   [_priceFormatter setLocale:usLocale];

知道如何以美元价格获得价格吗?

3 个答案:

答案 0 :(得分:0)

您可以尝试以下操作:

NSLocale *priceLocale = [[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease];

参考:Is there a simple way to format currency into string in iOS?

答案 1 :(得分:0)

您可以向在线转化服务发送http get请求,例如:

http://api.fixer.io/latest?base=GBP&symbols=USD

返回

{"base":"GBP","date":"2016-09-01","rates":{"USD":1.3261}}

获取费率,希望不要太远离Apple使用的费率,然后以美元计算价值。

答案 2 :(得分:0)

如果您想知道用户花费了多少钱(例如,细分为支持级别或优惠类别),则硬编码是个不错的选择。如果您有一个价格动态的应用程序且价格高昂,则可以选择设置轻量级的Mongo服务器或上载配置JSON或PLIST。

如果您想要一种快速,响应迅速的方式来实时跟踪收入估算,这些也是不错的选择。

记录用户在云中购买了哪些IAP,顺便说一句。您需要一个脚本来在IAP ID和“ USD”(或您喜欢的任何一种货币)之间转换,并且作为奖励,您将看到最受欢迎的IAP。

要进行更深入的了解(按国家,设备,操作系统,趋势等细分),还有其他服务。请记住,与简单的记录器服务器相比,它们具有更大的延迟时间(约24小时为1小时)。但您也不必考虑应用程序突然流行的原因:-)

相关问题