ios – 我应该在应用程序购买期间对失败的交易调用finishTransation吗?

前端之家收集整理的这篇文章主要介绍了ios – 我应该在应用程序购买期间对失败的交易调用finishTransation吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在为iOS应用程序编写应用内购买功能.我正在销售一些简单的消耗品(没有下载).我的代码基于本教程/主题
How do you add an in-app purchase to an iOS application?
但是我注意到它与官方苹果文档冲突.

在此代码中,当事务因任何原因失败时,此代码
[[SKPaymentQueue defaultQueue] finishTransaction:transaction];
叫做.但是在苹果页面
https://developer.apple.com/library/ios/documentation/StoreKit/Reference/SKPaymentQueue_Class/Reference/Reference.html#//apple_ref/occ/instm/SKPaymentQueue/finishTransaction
这个已经写完了:
“您的应用程序应该只在成功处理完交易并解锁用户购买的功能后才会调用finishTransaction.”

那么哪种方法是正确的?我应该在失败的交易上致电完成吗?

解决方法

根据Apple的 In-App Purchase Programming Guide

Your app needs to finish every transaction,regardles of whether the
transaction succeeded or Failed.

因此,无论事务结果如何,您始终完成事务以将其从支付队列中删除,然后处理代码中的状态(成功或失败),以便为用户提供适当的信息

原文链接:https://www.f2er.com/iOS/328679.html

猜你在找的iOS相关文章