ios - 支付队列不调用观察者对象更新交易,为什么?

标签 ios swift in-app-purchase app-store-connect

当用户按下 BUY 并添加付款时..

@IBAction func buyProduct(sender: AnyObject) {

    let payment = SKPayment(product: product)
    SKPaymentQueue.defaultQueue().addPayment(payment)
}

.. 我希望会出现一个蓝色的弹出窗口来批准购买,然后观察员会接到电话。

但我不是。知道为什么吗?我的 iTunes Connect 有什么问题吗?

在加载 viewController 之前,我调用了

SKPaymentQueue.canMakePayments() 返回 true 并且我开始了产品请求:

let pr = SKProductsRequest(productIdentifiers: NSSet(object: "com.xxx"))
pr.delegate = self
pr.start()

func productsRequest(request: SKProductsRequest!, didReceiveResponse response: SKProductsResponse!)委托(delegate)被调用。

我正在使用 this教程

最佳答案

你需要打电话

SKPaymentQueue.defaultQueue().addTransactionObserver(self)

打电话之前

SKPaymentQueue.defaultQueue().addPayment(payment)

关于ios - 支付队列不调用观察者对象更新交易,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26642044/

相关文章:

ios - Cocos2D 应该从 openFrameworks 获取 EAGLview,还是相反?

ios - 如何在 swift 5 中检查多个字符串不为零且不为空?

java - 在对话框打开时显示 toast ?

iphone - 为测试用户清除 iOS 应用内购买沙盒中的购买

ios - 通过 iOS 应用内购买定位特定应用

ios - 如何将 iOS 6.1 DocSets 从 Xcode 4 导入到 Xcode 5

ios - 在 ios 中创建用户无法删除的通知

ios - 将 tableview 添加到 ViewController 时会向下移动一点

ios - 如何获取 imessage 扩展程序创建的应用程序的电话号码

ios - 如何正确管理屏幕上的 Sprite 组