iOS应用 - 实施应用内购买的逻辑

时间:2018-02-01 09:56:21

标签: ios xamarin.ios in-app-purchase

我们的应用程序中有一个非消耗性IAP,价格为3.49欧元。我很久以前就在我的手机上购买了IAP,并且还测试了几次恢复,一切正常。然而,今天早上,在测试应用程序时,我将应用程序从App Store卸载并安装回我的手机上。我没有点击“恢复购买”,而是选择“删除广告”,然后再次购买IAP。我认为SDK(Xamarin.InAppPurchase)本身会自动跟踪我之前购买过这个IAP的内容,它会自行完成恢复过程。然而,几分钟之后我被证明是错的,我收到Apple的发票,我已经再次购买了IAP。我还收到了银行的声明,我已经购买了。

所以我的问题是:SDK本身是否应该检查以前是否根据我使用的Apple ID购买了IAP?我应该修改我的代码吗?删除广告'首先要完成恢复过程,如果我收到失败的回调,那么继续进行实际的购买过程?

1 个答案:

答案 0 :(得分:1)

服务器端应检查是否先购买了非消耗品。 如果你试图第二次购买,你应该得到这样的信息:

  

“你已经购买了。你想要吗?   再次免费购买?“

适用于非消费品购买。检查内部 itunesconnect ,如果您的应用确实非消费品,可能是您误用了它。

来自苹果社区的FYI信息: https://discussions.apple.com/thread/5574903