【问题标题】:StoreKit items getting purchased outside the app (redirected from my app to the App Store app)在应用程序之外购买的 StoreKit 项目(从我的应用程序重定向到 App Store 应用程序)
【发布时间】:2012-11-15 11:55:07
【问题描述】:

我有一个使用非续订订阅模式的应用。使用应用内购买测试帐户时效果很好。但是,在 Apple 的生产服务器上,有时用户会出于某种原因从我的应用程序转移到应用程序商店(有时是因为更新了计费信息,有时是为了回答安全问题)。这是在付款被添加到队列和 Apple 自己的付款流程中之后。一旦用户点击警报视图选项进入应用商店,我的交易观察者就会获得一个带有SKPaymentTransactionStateFailed 状态的交易。没关系。但是,在用户更新他们的账单信息或确认他们的安全问题后,系统会询问他们(仍在应用之外)是否仍想购买应用内购买。完成后,它们将被带回我的应用程序(它已自行关闭),并且事务观察者没有返回任何内容。仅当检索到产品列表时,队列才会更新为购买的产品。观察者在

之前注册通知

所以我的问题是:

如何处理在我的应用之外(在应用商店应用中)进行的购买?

如果在应用打开(但未完成)之前进行了购买,队列会在什么时候更新?我知道我应该让观察者一直在走,但我想要避免让用户在不知道他们已经购买的情况下购买了两次。

【问题讨论】:

    标签: ios in-app-purchase storekit


    【解决方案1】:

    经过反复试验,我似乎已经解决了我的问题

    事实证明我没有尽快为SKPaymentQueue 初始化我的事务观察器。它需要在application:didFinishLaunchingWithOptions: 方法中初始化并添加为事务观察器,并且不能稍后。至于交易何时到来,您的交易观察者的paymentQueue:updatedTransactions 方法将在您的应用程序下一次处于活动状态时被购买的交易调用。请务必注意,当您被带到 App Store 时,您的应用可能会因某种原因关闭一次,也可能不会关闭,如果最终关闭,该方法将在下次打开应用时被调用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-21
      • 1970-01-01
      • 2015-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多