ios支付 选择货币_iOS In-App Purchase中涉及到的货币单位

本文探讨了在iOS In-App Purchase中涉及的货币单位问题。当应用在多个地区发布时,用户支付的货币类型会根据其Apple ID所在的国家/地区而变化。通过iTunes Connect设置价格层级后,AppStore会自动转换货币。在客户端,商品价格信息包括NSDecimalNumber对象和NSLocale对象,用于表示价格和货币单位。为了显示用户友好的价格,可以使用NSNumberFormatter进行格式化。开发者需要注意,NSNumberFormatter并不负责货币转换,实际转换需要根据实时汇率手动处理。
摘要由CSDN通过智能技术生成

iOS In-App Purchase中涉及到的货币单位

现在iOS的AppStore上各类应用非常丰富,有付费的也有免费的,而免费的应用也可以支持IAP (In-App Purchase,应用内支付) 。 对于应用内支付,我们有时候希望对用户的支付行为进行记录,甚至通过记录支付过程进行记账,那在这个过程中用户支付所使用的货币类型是我们需要考虑的一个问题,这里我整理一下。

做过iOS发布的朋友应该都知道,我们在iTunes Connect上发布一款应用的时候会选择发布的国家/地区。这实际上也就是说我们在不同国家地区的AppStore上,可下载安装的应用是不同的,而且这与用户的Apple ID账号有关。

所以,本文的问题主要是针对多地区发布的,如果你的应用只在中国大陆发布,而不考虑港、澳、台及其他国家和地区,应用收费只需要关注人民币就可以了。

在iTunes Connect提交IAP商品信息时,我们定的价格只需要选择对应的Price Tier,苹果的AppStore会根据特定的货币单位转换成对应的值。

在应用客户端里,商品信息通过向AppStore发起SKProductsRequest获得。每一个商品的价格等由一个SKProduct对象来维护,其中有两个重要属性:

price,一个NSDecimalNumber类对象

priceLocale,一个NSLocale对象,表示地区信息,和price的数值对应;这里面包含的东西就多了,其中包括一个货币单位

一个商品,比如设置了Tier1,那么如果他在美国AppStore发布,即用户账号是在美国AppStore登录,则

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值