iOS app - 为应用内购买实现的逻辑
iOS app - Logic to implement for in-app purchases
我们的应用程序中有一个非消耗性 IAP,价格为 3.49 欧元。我很久以前就在 phone 上购买了 IAP,还测试了几次恢复,一切正常。然而,今天早上,在测试该应用程序时,我从 App Store 卸载并安装了该应用程序回到我的 phone。我没有点击 'Restore Purchases',而是选择了 'Remove Ads',因此再次购买了 IAP。我认为 SDK(Xamarin.InAppPurchase) 本身会自动跟踪我之前购买过此 IAP,并且它会自行完成恢复过程。然而,事实证明我错了,因为几分钟后,我收到了 Apple 的发票,表明我再次购买了 IAP。我还收到了我的银行的购买对账单。
所以我的问题是:SDK 本身不应该检查 IAP 之前是在我使用的 Apple ID 下购买的吗?我是否应该在 'Remove Ads' 上修改我的代码以首先完成恢复过程,如果我收到失败的回调,然后继续进行实际的购买过程?
服务器端应该检查之前是否购买了非消耗品。
如果您尝试第二次购买,您应该会收到如下消息:
"You have already purchased this. Do you want to
purchase this again for free?"
它适用于非消耗品购买。检查 itunesconnect 如果你的应用程序真的是不可消费的,可能是你错误地把它变成了可消费的。
还有来自 Apple 社区的 FYI 信息:
https://discussions.apple.com/thread/5574903
我们的应用程序中有一个非消耗性 IAP,价格为 3.49 欧元。我很久以前就在 phone 上购买了 IAP,还测试了几次恢复,一切正常。然而,今天早上,在测试该应用程序时,我从 App Store 卸载并安装了该应用程序回到我的 phone。我没有点击 'Restore Purchases',而是选择了 'Remove Ads',因此再次购买了 IAP。我认为 SDK(Xamarin.InAppPurchase) 本身会自动跟踪我之前购买过此 IAP,并且它会自行完成恢复过程。然而,事实证明我错了,因为几分钟后,我收到了 Apple 的发票,表明我再次购买了 IAP。我还收到了我的银行的购买对账单。
所以我的问题是:SDK 本身不应该检查 IAP 之前是在我使用的 Apple ID 下购买的吗?我是否应该在 'Remove Ads' 上修改我的代码以首先完成恢复过程,如果我收到失败的回调,然后继续进行实际的购买过程?
服务器端应该检查之前是否购买了非消耗品。 如果您尝试第二次购买,您应该会收到如下消息:
"You have already purchased this. Do you want to purchase this again for free?"
它适用于非消耗品购买。检查 itunesconnect 如果你的应用程序真的是不可消费的,可能是你错误地把它变成了可消费的。
还有来自 Apple 社区的 FYI 信息: https://discussions.apple.com/thread/5574903