SKPaymentTransactionObserver没有在app开关上获得回调

Ed *_*rty 6 iphone cocoa-touch objective-c in-app-purchase

我设置了应用内购买,以便当用户点击"购买"按钮时,会出现"请稍候"视图,并将付款添加到付款队列中.这总是导致队列的观察者立即回调,说明交易进入"采购"状态.

我的问题发生在用户返回主屏幕,然后弹出确认购买对话框,然后取消.如果我在切换回应用程序之前在主屏幕上等待一段时间,应用程序永远不会获得有关事务切换状态或被删除的任何回调.如果我检查支付队列,我可以看到该交易仍然在队列中,仍然处于"采购"状态.在恢复应用程序后,有什么办法可以让它回调并从队列中删除它吗?

Lio*_*Lio 5

如果我理解你的情况,你就遇到了这个问题:

在App Purchase中,用户在后台取消tx:tx状态保持购买状态

这似乎是Apple的商店套件中的一个错误.如果您在开始购买后立即将应用程序发送到后台,然后在提示购买确认弹出窗口时按取消按钮,则可以轻松复制此问题.您的应用将永远不会收到交易失败(已取消)通知,并将进入阻止状态(如果您禁止用户界面尝试阻止用户与应用互动,直到购买完成).

我们必须等待Apple的修复.在此期间,如果您的应用进入了阻止状态,因为您在购买时禁用了用户界面; 你应该实现一些机制,让用户离开那个状态.

祝好运!