应用程序内购买:无效的产品标识符iOS 9 Swift 2

时间:2015-12-10 20:33:04

标签: in-app-purchase swift2 ios9

我一直收到这个无效的商品标识码。我的代码好吗?可能是什么问题呢?我编写了代码来打印我的应用内购买,但它继续这个if语句:

if response.invalidProductIdentifiers.count != 0 {
        print(response)
        print(response.invalidProductIdentifiers.description)
    }

在我在iTunes上的应用内购买页面中,我有复制到xcode的产品的确切ID,但它仍然不起作用。

我的完整代码:

//global variables
var productsArray: Array<SKProduct!> = []
var productIdentifiers = Set<NSObject>()

func requestProductInfo() {
    if SKPaymentQueue.canMakePayments() {
        //let productIdentifiers = NSSet(array: productIDs)
        let productRequest = SKProductsRequest(productIdentifiers: self.productIdentifiers as! Set<String>)

        productRequest.delegate = self
        productRequest.start()
    }
    else {
        print("Cannot perform In App Purchases.")
    }
}

func productsRequest(request: SKProductsRequest, didReceiveResponse response: SKProductsResponse) {
    if response.invalidProductIdentifiers.count != 0 {
        print("here")
        print(response)
        print(response.invalidProductIdentifiers.description)
        print("here2")
    }

    if response.products.count != 0 {
        for product in response.products {
            productsArray.append(product)
            print(productsArray)
        }
    }
    else {
        print("There are no products.")
    }
}

1 个答案:

答案 0 :(得分:0)

您的代码很好,我猜您的应用包ID或设置临时配置文件存在问题。

您必须设置相同的BundleId和最新的临时配置文件(证书)并启用&#34;应用程序内购买&#34;。