收货未通过验证时,最佳方法是什么?

时间:2014-05-30 20:04:47

标签: ios in-app-purchase storekit

当OSX上的收据验证失败时,我的意思是申请收据,Apple说要退出代码173,这将强制iTunes加载并从Apple下载收据。如果收据因某种原因失败(用户取消iTunes密码请求,用户没有互联网等),则该应用程序根本无法加载。

但是对于iOS来说,事情是不同的。没有exit(173)。 iOS的最佳方法是什么?当应用加载时,它会尝试验证收据,收据不存在,然后我们使用

请求新收据
SKReceiptRefreshRequest *refreshReceiptRequest = [[SKReceiptRefreshRequest alloc] initWithReceiptProperties:@{}];

现在怎样?有两种情况:请求失败(没有互联网,没有收据等)或请求成功,有收据但收据无效(可能是一些盗版尝试(?))。开发人员应该做什么,退出应用程序?

如果对于inapp购买验证失败并且商品是非消费品,您只需禁用该商品,直到您可以验证或用户进行还原购买,但如果验证应用收据失败,则说明的是整个应用程序。

最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

来自Apple Receipt Validation Programming Guide -

  

如果iOS中的验证失败,请刷新收据

     

如果验证失败了   iOS,使用SKReceiptRefreshRequest类刷新收据。

     

请勿尝试终止该应用。根据您的选择,您可以给用户   宽限期或限制应用内的功能。

所以它并没有准确地说出你应该做什么,但看起来你可以显示一条消息和/或禁用功能 - 这可能包括我根本不提供任何功能 - 禁用所有用户界面元素