我在iTunes Connect中创建了一个IAP产品。
其状态为:准备提交
在应用程序代理上我使用以下代码来检索产品信息:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
...
requestProductData()
return true
}
func requestProductData() {
if SKPaymentQueue.canMakePayments() {
let request = SKProductsRequest(productIdentifiers: Set(["xxxx.xxxxx.xxxx"]))
request.delegate = self
request.start()
}
}
func productsRequest(request: SKProductsRequest, didReceiveResponse response: SKProductsResponse) {
var products = response.products
print("products:",products.count)
for product in response.invalidProductIdentifiers {
print("Product not found: \(product)")
}
}
我总是得到:“找不到产品:xxxx.xxxxx.xxxx”
我确认产品ID已正确写入。
我使用的是物理设备,而不是模拟器。
已在物理设备中登录的AppleID已正确添加到测试人员沙盒列表中。
我的应用程序目前仅提交给TestFlight(没有应用内购买),还提交给了Appstore。
更新
我的付费应用合同状态显示:处理
这可能是原因吗?
答案 0 :(得分:1)
是的,如果没有与Apple签订的有效付费应用合同,则无法进行测试 - 您需要提供联系信息,银行信息和税务信息。
答案 1 :(得分:0)
您的问题是否得到解决? Apple Developer's告诉我,有一个全球(全球)问题与同意......税务......银行业有关,这也阻碍了IAP的运作。自11月24日左右以来一直困扰着他们。截至12月2日(2015年),仍然没有修复。