3

关于检测订阅已自动续订的过程,我有几个问题。

目前我的沙盒测试环境已经全部设置好,我可以购买 1 个月的订阅,所有这些都很好用。

我的问题如下:

  1. 我是否需要验证应用内购买的初始收据(或任何后续收据)?如果是这样,出于什么原因?

  2. 我的应用程序是否通过 paymentQueue:updatedTransactions: 自动更新发生时调用?无论是在沙盒环境中,还是在生产环境中。

到目前为止,我还没有看到 StoreKit 通知我续订(在沙盒环境中),但我也读到它很挑剔,可能不会。

我应该考虑的有关自动续订订阅的任何一般提示?

感谢您的帮助和时间!

4

1 回答 1

2

1.关于收据验证

收据验证是您在解锁用户内容之前执行额外安全检查的方法。将收据视为乐透彩票。一位客户带着“中奖券”来找您。根据您认为彩票奖励的价值,您可以给该个人他们的奖金,或者您可以联系 Apple 并检查用户是否真的通过他们购买了这张彩票。

客户可能通过某种恶意手段获得了这张乐透票,无论是越狱设备等,因此由您决定是否要验证收据。

2. 关于更新通知

官方文档声明如下:

订阅成功续订后,Store Kit 将续订事务添加到事务队列中。您的应用程序在启动时检查事务队列并以与任何其他事务相同的方式处理更新。请注意,如果您的应用在订阅更新时已经在运行,则不会调用事务观察器;您的应用会在下次启动时发现续订。

因此,您绝对应该在您的应用程序中收到收据续订通知。不要忘记,您应该始终将自己添加为StoreKit 的 paymentQueue的观察者,以使其正常工作,在您的应用程序委托中类似这样的操作 didFinishLaunching 将起作用:

//where YourObserver is an object that is alive for the apps lifecycle
[[SKPaymentQueue defaultQueue] addTransactionObserver:YourObserver];
于 2014-11-13T13:17:17.907 回答