我什么时候应该调用SKPaymentQueue.restoreCompletedTransactions()?

时间:2020-03-02 16:50:17

标签: ios in-app-purchase storekit

我目前正在我的应用程序中实现应用程序内购买功能。这是非消耗性的IAP。

我永久需要知道用户是否购买了此IAP,并且我没有将这些数据存储在任何外部数据库中。

我知道我可以致电SKPaymentQueue.restoreCompletedTransactions()来获取此数据。但是,我想到了两个问题:

  • 我什么时候需要打电话给我?我想在启动应用程序时(在didFinishLaunchingWithOptions上调用它。
  • 我意识到,在restoreCompletedTransactions()中调用didFinishLaunchingWithOptions时,如果没有用户登录,则弹出窗口会立即要求用户在应用启动时登录,我觉得这太激进了。仅当用户已经登录时,我才能致电restoreCompletedTransactions()吗?

谢谢您的帮助。

0 个答案:

没有答案