应用内购买在我的应用中正常运行。我什至使用自己的服务器来验证交易收据。
但是,我似乎遇到了 SKPaymentQueue TransactionObserver 和/或 DefaultQueue 的问题。
每当我进行以下调用时,用于旧测试帐户的 iTunes 提示都会出现 -
SKPaymentQueue *currentQueue = [SKPaymentQueue defaultQueue];
我不知道如何阻止这个旧测试帐户在我需要进行购买或恢复交易时出现。
有人推荐了以下代码,它似乎可以完成所有旧交易,但它并没有解决我的问题。
SKPaymentQueue* currentQueue = [SKPaymentQueue defaultQueue];
[currentQueue.transactions enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
[currentQueue finishTransaction:(SKPaymentTransaction *)obj];
}];
我还尝试过删除该应用程序,从设备中删除旧的测试帐户以及 iTunesConnect。旧的用户提示仍然出现!
非常感谢任何帮助,谢谢。
最佳答案
它们是沙盒交易还是生产交易?
沙箱交易很乱,有时我在队列中发现旧交易,沙箱交易的生命周期与生产交易的生命周期不完全一致
关于ios - 从队列中删除旧的 SKPayment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23399464/