以多种货币动态显示应用内购买的价格

时间:2015-09-12 11:12:19

标签: ios in-app-purchase itunesconnect

我正在尝试以多种货币显示应用内购买的价格。 用户可以一次选择1项,2项或3项。价格在运行时自动更新(用户选择一个项目,而不是选择2个项目),以便用户可以看到它正在更新。如果价格仅以美元显示,则相当容易实现。当加入欧元或英镑时,事情开始变得混乱。如何以多种货币动态显示IAP价格?

2 个答案:

答案 0 :(得分:1)

这样的事情对你有用。以下代码打印本地化的标题,货币代码和价格。

    let product = ... //your SKProduct
    if let currencyCode = product.priceLocale.objectForKey(NSLocaleCurrencyCode) as? String {
        print(product.localizedTitle + " : " + currencyCode + " \(product.price)")
    }

答案 1 :(得分:1)

这是我使用的功能。当您在世界某个地方的不受支持的商店中时,似乎没有填充SKProduct的某些属性。

internal func getPrice(#priceLocale: NSLocale!, price: NSDecimalNumber, count: Int) -> String? {
    let formatter = NSNumberFormatter()
    formatter.formatterBehavior = NSNumberFormatterBehavior.Behavior10_4
    formatter.numberStyle = NSNumberFormatterStyle.CurrencyStyle
    formatter.locale = priceLocale
    return formatter.stringFromNumber(price * count)
}

这是我使用的功能(实际上是extension SKProduct中的一个属性) 如果格式nilcount出现问题,则会返回price