ios 内购产品的恢复问题(SKPaymentTransactionStateRestored,Non-renewing)

最近项目中一个内购的问题总是被拒,跟苹果解释,最终得到的结果是必须换成No-renewing类型(囧)。

那就开始着手做吧,但是在开发的过程中遇到一个问题:在ios审核中,如果产品不能被恢复,会被拒。刚开始不太理解这个恢复的意思,后来找了一些资料

通过调用方法:

[[SKPaymentQueuedefaultQueue] restoreCompletedTransactions];

[[SKPaymentQueuedefaultQueue] addTransactionObserver:self];

之后会回调SKPaymentTransactionObserver的代理方法:- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions

,通过枚举 transations ,获得SKPaymentTransaction对象,就可以拿到当前Apple ID买过的产品,也就是处于SKPaymentTransactionStateRestored状态下的产品。但是这个方法一直没有被调起😕,后来看了官方文档,截图如下:


Non-renewing类型的RestoredBy your app,也就是说需要App自己做的(可以服务器存储,也可以本地存储),这个方法: - (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray*)transactions 只会在产品类型是Non-consumable、Auto-renewable以及免费订阅情况下才会被调起。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容