iphone - 我如何停止SKPaymentTransaction?

标签 iphone ios in-app-purchase

我正在编写一个使用inApp Purchase系统的应用程序,但找不到停止事务观察器方法的停止事务的方法。我需要这种行为,因为在低连通性的情况下,我想给用户停止与Apple服务器的连接的能力。我不希望在2或3分钟后出现一个或多个默认购买警报,因此,最好的解决方案是通过uibutton和Action完全停止付款过程。我已经尝试过类似的方法,但是没有用。

    -(IBAction)ClosePayment{

       for (SKPaymentTransaction *transaction in  [[SKPaymentQueue defaultQueue]transactions])  {
          [[SKPaymentQueue defaultQueue] finishTransaction:transaction];
       }

    }

此Action使应用程序崩溃,我也尝试过;
    [[SKPaymentQueue defaultQueue]removeTransactionObserver:self];

这不会产生任何错误,但是根本不起作用。

最佳答案

在“购买”状态下似乎无法停止SKPaymentTransaction ...我也试图在没有TransactionObserver的情况下初始化相关的SKPayment对象(仅用于测试目的...)。如果没有TransactionObserver,则购买将无法正常工作,但仍会向用户显示有关inapp购买系统的第一条警报。文档中没有任何东西支持“停止”,所以我认为只有某些 private API才有可能。

关于iphone - 我如何停止SKPaymentTransaction?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13720136/

相关文章:

iphone - 如果不满足功能,则阻止用户安装我的应用程序

javascript - iPhone OS 3.0 中使用 webkit-transform translate() 的慢速动画

java - Phonegap 中的 EmailComposer 无法正常工作

iphone - 通过iTunes在iPhone上安装应用程序时出现错误0xE803FFE

ios - 在 UICollectionView 中调用 reloadData 后未调用 cellForRowAtIndexPath

ios - 更新表格单元格内容的问题

ios - 自定义 UIImagePickerController 以具有白色边框

具有 InAppPurchase 和 2 个目标的 iOS 应用程序

ios - 事件应用程序中的应用程序内购买失败

android - 如何检查用户是否购买了 IAP 提供的产品