在(自动)续订订阅后,本地收据不会更新

Nie*_*aan 6 macos cocoa storekit in-app-purchase auto-renewing

我有一个使用应用内购买(IAP)的应用程序,特别是可自动更新的订阅.

有时似乎,当订阅自动续订时,本地收据不会自动更新.因此,在本地检查活动订阅是否可用会导致错误.远程执行相同的验证(使用Apple服务器)返回true.

如何以及何时更新本地存储的收据,或者这是否只能手动触发?如果是这样,是否需要使用SKReceiptRefreshRequestSKPaymentQueue的restoreCompletedTransactions进行此操作?基于Apple的文档,前者似乎是要走的路:

刷新收据的请求,表示用户与您的应用程序的交易.

不幸的是,这失败了,也许是因为它认为有更新?但是有:因为本地收据已过时,因为它不包含续订的订阅状态.

我想确保我正确地做事并且这种行为(偶尔会再次发生)并不是Apple的结果.

感谢您的任何反馈.