1

这真让我抓狂。

我正在尝试调试使用应用内购买的应用。

我使用以下简单的代码来获取我的产品(我只有一个产品):

NSSet *productIdentifiers = [NSSet setWithObject:PRODUCT_ID];       
SKProductsRequest *request = [[[SKProductsRequest alloc] initWithProductIdentifiers:productIdentifiers] autorelease];
request.delegate = self;
[request start];

response.products在运行 iOS5 及更高版本的设备上,我将我的产品重新置于productsRequest:didReceiveResponse:. 我还可以在这些设备上下订单(使用测试用户)。

在运行 iOS 4.01 的设备上,我得到一个空数组,response.products我的产品 id 在response.invalidProductIdentifiers. 如果我尝试忽略产品信息并 addPayment:使用相同的产品 ID 在此设备上调用,我将SKPaymentTransactionStateFailed进入paymentQueue:updatedTransactions:.

显然我的设置是正确的,因为在我的 iOS5+ 设备上一切正常。

我还检查并尝试了http://troybrant.net/blog/2010/01/invalid-product-ids/中的所有内容,但均无济于事。

有任何想法吗?你认为我在这种情况下提交应用程序安全吗?

4

1 回答 1

0

当我调试类似问题时,这对我有帮助 - http://teewe.com/2011/10/24/ios-in-app-purchase-programming-troubleshooting-guide-continuously-updating/

于 2012-08-19T14:24:15.357 回答