【发布时间】:2015-05-02 05:25:41
【问题描述】:
我在 App Store 中有我的应用程序,目前是付费版本,但我正在免费提供这个应用程序并带来 IAP,它可以解锁他们以前拥有的一些功能。例如,免费用户只能添加 10 个条目,但 IAP 用户可以在我正在开发的这个版本中添加任意数量,但在当前的 App Store 版本中,他们可以添加任意数量。
如果用户从 App Store 中的版本升级到我现在带来的版本,我立即将 NSUserDefault "IAPSuccessful" 设置为 YES,以便用户解锁所有功能(因为他们已经已经购买了)。
但是,如果用户删除应用程序并重新安装它并单击“恢复”按钮,则他们实际上无法恢复任何内容。
我将如何解决这个问题?我想确保用户在升级时拥有所有功能,但我如何将购买分配到他们的帐户,以便他们可以从其他设备恢复或在应用被删除时恢复?
澄清一下,如果用户使用的是当前版本 2.2 并且他们升级了,他们会解锁 IAP 的所有功能并且现在使用 Pro 版本(基于 NSUserDefaults),但如果他们卸载应用程序并重新安装然后点击恢复,他们没有什么可以恢复的,因为他们的帐户上没有“收据”,就像他们是新用户并且他们进行了 IAP 一样。我该如何解决这个问题?
我认为我需要在更新完成时调用购买,但不向用户“收费”。
在更新中,我有一张带有UIButton 的小图片,它只是向更新用户提供了新功能的指示。当用户单击该图像中的UIButton 时,它会将IAPSuccessful 的NSUserDefaults 设置为“是”,以便他们立即使用专业版。但是,它不会为用户的 iTunes 帐户设置活动购买/收据。
我刚刚尝试在我的IAPViewController 中调用makePurchase 方法,但没有任何反应。
【问题讨论】:
标签: ios objective-c iphone in-app-purchase