添加付款未知产品标识符

AddPayment Unknow Product identifier

我在 GitHub - https://github.com/rpzzzzzz/IAPMaster

上使用 rpzzzzz 的 IAPMaster

我在 itunesconnect 上向我的应用程序添加了消耗品应用程序内购买,并为其提供了产品 ID "someid"。

根据示例项目,我尝试购买了-

let iap = IAPMaster.sharedInstance
    iap.addPayment(product_id, userIdentifier: nil) { (result) -> () in

        switch result{
        case .Purchased(let productId,let transaction,let paymentQueue):
            print(productId)
            print(transaction)
            print(paymentQueue)

            paymentQueue.finishTransaction(transaction)
        case .Failed(let error):
            print(error)
        default:
            break
        }
    }

当我 运行 此代码时出现错误 -

Error Domain=AddPayment Unknow Product identifier Code=0 "(null)"

我该如何解决这个错误?

好的。我下载并 运行 项目并找到了解决问题的方法。基本上你得到的错误是告诉你你有一个未知的 product_id。在您提供的 GitHub 存储库中,有一些示例代码可以让您调用购买方法。

@IBAction func purchase(sender: AnyObject) {
    let iap = IAPMaster.sharedInstance
    iap.addPayment("your_product_id", userIdentifier: nil) { (result) -> () in

        switch result{
        case .Purchased(let productId,let transaction,let paymentQueue):
            print(productId)
            print(transaction)
            print(paymentQueue)
            paymentQueue.finishTransaction(transaction)
        case .Failed(let error):
            print(error)
        default:
            break
        }            
    }
}

在这里,您必须将 your_product_id 替换为您从 iTunes Connect 获得的唯一 ID。因此,您可以看到正是这条特定的行导致了错误,如它所说:
iap.addPayment("com.irawd.test.30d", userIdentifier: nil) { (result) -> () in ... 添加付款方式。一旦您输入您的唯一 ID,它就会毫无问题地运行,并让您购买商品。如果您想阅读关于 iAP 的非常棒的教程,here 是来自 AppCoda 的教程。

朱利安,希望对您有所帮助!