我有适用于iOS的Xamarin应用,并通过应用内购买。在测试期间,我购买了一种消耗品但未完成转换(因错误而崩溃)。现在,如果我重新安装应用程序,它允许购买此产品,但当然会恢复它,并显示消息“产品已免费恢复”。iOS:先前购买的应用内商品在购买时恢复,但交易未更新
此行为是预期的,但队列侦听器的UpdatedTransactions未被触发。我可以直接通过StoreKit.SKPaymentQueue.DefaultQueue.Transactions检查队列,但我需要知道用户交互何时完成(用户在该消息对话框中按下确定)。但是没有听众的方法被解雇。 正如我从Apple文档了解到的,在此之后必须有事务更新。也许它在我尝试购买之前被解雇。但是,我应该在购买前手动检查队列吗?
谢谢,我怀疑类似的东西。顺便说一下,你可以随时检查队列,所以你不必在app开始的时候这样做 - 至少在xamarin中SKPaymentQueue.DefaultQueue.Transactions总是可用的,所以不需要另外存储它们。 – Tertium
我编辑了答案。确保重新阅读。对不起:) –
我会重写代码,并稍后标记您的答案 – Tertium