pt2*_*ph8 25 iphone in-app-purchase
对于关于iTunes订阅的第一百万个问题感到抱歉,但我仍有一些疑问.
基本上我在我的应用程序中实现自动更新订阅,我想确保我做对了.以下列出了我想出的步骤:
这些步骤是否正确?如果是这样,为什么Apple医生说:
在大多数情况下,您的iOS客户端应用程序不需要更改.实际上,您的客户端应用程序现在变得更加简单,因为您可以使用相同的代码来恢复自动更新订阅,就像恢复非消耗性产品一样."恢复交易"中对此进行了描述.您的应用程序会在续订订阅的每个时间段内收到单独的交易; 您的申请应单独核实每张收据.
对我来说,看起来这需要一些代码来处理我提到的所有各种情况.或者我完全错了.我呢?
另外,我如何知道订阅到期日期?我无法找到在任何地方获取此信息的方法.我应该把它保存在我自己的数据库中吗?
更新:
自从我发布这个问题以来,我已经想出了一些事情.如果我错了,请随意纠正我.
首先,我想我应该在我自己的数据库中存储订阅的长度,因为正如Apple的文档中所述,您无法通过Apple的Web服务以任何方式检索它.实际上,每个订阅长度都有不同的产品标识符,因此您应该有办法将产品标识符转换为订阅长度.
此外,Sylvian 已经公布了有关他实施自动续订订阅的详细信息,所以至少我知道我的想法并没有太多缺陷.
现在唯一的问题是:我怎么知道用户有有效的订阅?我可以将这些信息存储在我的服务器上,是的,但是如何将用户与已完成的交易相关联?我应该保存设备的UDID吗?
Syl*_*ain 30
以下是我们如何在我的公司实施In App Purchases,特别是新的汽车再生产品.
应用程序将交易收据发送到我们的Web服务,如果我们正确处理它并且Apple可以验证它,我们会向应用程序返回OK.在这种情况下,我们更新了用户帐户(即数据库),说"是他已经付款并且他的订阅有效,直到收据到期日期".
在此Web服务的OK之后,应用程序通过另一个Web服务重新加载帐户信息,并看到有一个有效的订阅.就是这样......直到自动再生产品出现.
我们现在必须实施一些每天运行的CRON工作:我们每天都会制作一份应该过期的通行证清单,我们会询问Apple原始收据是否仍然有效:神奇的是,在他们的回答中,有latest-receipt嵌入最新收据的字段.如果它与我们的不同,我们理解订阅已自动续订,我们存储下一次cron检查的最新收据,并且我们更新用户帐户以延长到期日期.
希望能帮助到你.
我想我找到了解决方案.它不需要额外的用户名/密码,似乎工作正常.
注意:如果您认为这是不合适的,请在评论中解释原因.谢谢.
基本上,每当用户购买订阅时,我都会根据我的服务器验证收据,并将收据数据存储在用户默认值中.然后,当应用程序打开时,或者每当我需要检查订阅是否仍然有效时,我从用户默认值中检索以前保存的收据数据并对服务器进行验证.
我的webservice只返回订阅是否仍然有效或已过期,以及其他一些相关信息,如订阅长度.为此,它只是像往常一样查询iTunes服务器,并检查状态响应是否为非零.21006表示订阅已过期.
| 归档时间: |
|
| 查看次数: |
14826 次 |
| 最近记录: |