ios7中的自动续订订阅

时间:2014-03-27 06:39:07

标签: ios ios7 in-app-purchase auto-renewing

我知道它已被多次询问,但没有一个问题对我有帮助,我不确定哪些答案在iOS 7中仍然有效。

我正在使用自动续订订阅做一些应用。我已经成功创建了我的产品,我可以和测试用户一起购买。

我的问题是:检查特定用户是否仍然可以访问此产品的正确方法是什么?

如何测试自动续订是否运行良好? (因为我读过沙盒中的自动更新不能像真正的iStore那样工作)。

最后一个问题是:苹果拒绝许多ARS应用程序仍然是真的吗?

马尔科

3 个答案:

答案 0 :(得分:8)

要检查用户是否仍然可以访问该产品,您应该存储在付款期间收到的收据数据,并使用应用商店服务检查该收据。

应用程序商店服务将回复您的收据状态(0表示有效收据,21006表示订阅已过期且未续订等)

可以在此处找到带有示例代码的流程:

https://developer.apple.com/library/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ValidateRemotely.html#//apple_ref/doc/uid/TP40010573-CH104-SW3

回答您的上一个问题:是Apple拒绝了许多ARS应用,它仅适用于内容应用(杂志,报纸,视频等)。例如,如果您提供服务,例如Dropbox,则您的应用不符合ARS条件

在我们的案例中,我们正在分发图书订阅服务,以验证应用程序Apple问我们每个月有多少新内容可供用户使用。


修改

对于iOS 7,状态0代表有效收据,即使它已过期:

  

对于iOS 7样式的应用收据,状态代码反映了状态   作为一个整体的应用程序收据。例如,如果您发送有效的应用程序   包含过期订阅的收据,响应为0   因为收据整体有效。

您需要验证latest_receipt_info expires_date。

答案 1 :(得分:2)

最近Apple推出了一项新功能,可在订阅续订时接收服务器端通知。但是,订阅应该是应用程序内的。

请参阅以下链接供您参考:

https://help.apple.com/itunes-connect/developer/#/dev0067a330b

&安培;

https://itunespartner.apple.com/en/apps/news/45333106?sc_cid=ITC-AP-ENREC

答案 2 :(得分:0)

Apple不提供内置于iOS或REST API中的任何内容,为您提供简单的订阅详细信息,也没有任何回调可供您在续订或取消时收听和回复。 Apple确实有一个API,当给定用户的本地收据和iTunes Connect中生成的“共享密钥”时,会返回用户的应用程序购买历史记录的JSON对象,包括他们当前的订阅信息。In-App purchase doc