我已经谷歌这个问题几个小时了。我尝试过类似的事情:
- 确认 Bundle Identifier 和 product id 绝对正确
- 在模拟器和真实设备上删除并重新安装应用程序
- 我尝试了“productID”和“com.company.project.productID”
- iTunes 连接中的 IAP 也应该正确配置
我唯一不确定的是我没有在我的 iTunes 连接中填写银行和税务信息。实际上,我只是填写了银行信息,但需要 24 小时才能更新。
我的代码看起来像这样
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
// Set IAPS
if(SKPaymentQueue.canMakePayments()) {
println("IAP is enabled, loading")
var productID:NSSet = NSSet(objects: "ProductID")
var request: SKProductsRequest = SKProductsRequest(productIdentifiers: productID as Set<NSObject>)
request.delegate = self
request.start()
} else {
println("please enable IAPS")
}
}
func productsRequest(request: SKProductsRequest!, didReceiveResponse response: SKProductsResponse!) {
println("product request")
var myProduct = response.products
for product in myProduct {
println("product added")
println(product.productIdentifier)
println(product.localizedTitle)
println(product.localizedDescription)
println(product.price)
list.append(product as! SKProduct)
}
}
此代码来自一个示例,它在我的模拟器中运行良好。但是当我用我自己的 productID 替换 ProductID (当然 bundleID 也是如此)时, SKProductsrequest 变成什么都不返回。
我不知道为什么,希望有人可以帮助我。谢谢!