应用内购买-付款成功后的选项

时间:2020-06-03 07:56:03

标签: ios swift in-app-purchase

我已经在我的一个应用程序中成功实现了IAP。

此刻,我正在使用NotificationCenter通知我的UIViewController,该商品有效:

func paymentQueue(_ queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) {
    for transaction in transactions {
        print(transaction.transactionState.status(), transaction.payment.productIdentifier)
        switch transaction.transactionState {
        case .purchasing: break
        case .purchased:
            print("purhcsed")
            NotificationCenter.default.post(name: Notification.Name(rawValue: "Cvpurchased"), object: nil, userInfo: nil)
            queue.finishTransaction(transaction)
        default:
            print("updatedTransactions")
            queue.finishTransaction(transaction)
        }
    }
}

问题是我要等待用户在执行下一个操作之前在“您已全部设置”警报上按“确定”。

enter image description here

我一直在寻找委托方法,但在Apple文档中找不到任何内容。

1 个答案:

答案 0 :(得分:0)

您可以使用applicationState中的UIApplication作为解决方法。

购买完成后,如果applicationStateinactive,请等到状态更改为active(点击确定按钮)后,再进行处理

您可以使用applicationDidBecomeActive(_ application: UIApplication)委托或UIApplicationDidBecomeActive通知来处理状态更改。