如何以及在何处存储应用内购买的“耗材”产品?

时间:2013-09-03 09:15:50

标签: iphone ios xcode app-store in-app-purchase

我们假设我们有一个虚拟硬币游戏。该游戏附带来自App Store的10枚硬币。有可能购买不同价格的硬币1,3,5,10,100 ......用户在游戏期间花费硬币。

问题:

  1. 在哪里存放硬币数量?
  2. 重新安装应用程序后如何防止使用预装硬币?
  3. 如果我们需要将硬币存储在外部服务器上,我们应该使用哪种设备标识符?是identifierForVendor吗?如果是这样,卸载应用程序将更改标识符。
  4. 用户是否希望在其他设备上拥有相同的硬币?如果是这样,如何处理?

2 个答案:

答案 0 :(得分:4)

我认为此方案的最佳解决方案是游戏内帐户+ iCloud:

  1. 将用户个人资料保存为plist,例如,将其保护以防止操纵,并将其同步到iCloud。
  2. 每次应用启动时强制iCloud同步。
  3. 当您通过游戏内和iCloud帐户识别用户时,不需要这样做。
  4. 这里我要说的是,只要用户使用相同的个人资料名称和iCloud帐户,用户就会在其他设备上获得相同的硬币。
  5. 如果您想学习iCloud编程,我可以通过Ray Wanderlich的教程向您推荐iOS5。 如果您在评论中提出更详细的问题,我很乐意为您提供更详细的信息。

答案 1 :(得分:0)

根据Apple的应用内购买指南,我很遗憾地说...

  

“您可能不会提供代表中间货币的物品,因为   用户必须了解他们的特定商品或服务   正在购买。“

https://developer.apple.com/in-app-purchase/In-App-Purchase-Guidelines.pdf