在应用程序购买不工作

时间:2012-02-06 10:32:40

标签: ios in-app-purchase

我使用本教程http://www.raywenderlich.com/2797/introduction-to-in-app-purchases在我的应用中创建购物。

此代码有时正常工作或无法正常工作。我知道这听起来很有趣,但这是我的问题。

例如:首先启动应用程序(所有项目下载并显示在表格中,我可以购买任何此项),但在下次(例如第二次启动)时,我在此行收到错误:

SKProduct *product = [[InAppRageIAPHelper sharedHelper].products objectAtIndex:0]; 

错误是

  

由于未捕获的异常'NSRangeException'索引0超出空数组的边界而终止应用程序

3 个答案:

答案 0 :(得分:2)

如果你想避免这种崩溃,只需在处理产品之前加上条件:

if ([[InAppRageIAPHelper sharedHelper].products count] >0)
{
   SKProduct *product = [[InAppRageIAPHelper sharedHelper].products objectAtIndex:0];
   //product processing goes here
}
else
{
   NSLog (@"Warning: no products returned");
}

答案 1 :(得分:1)

使用付款方式时使用此代码.....按下付款按钮

NSLog(@"Products - %@",[IAPClockDietHelper sharedHelper].products);

你发现,当你第一次启动应用程序时,你有产品阀门...当你第二次使用应用程序时,产品有NULL值....所以你的应用程序崩溃...检查..

答案 2 :(得分:0)

我的设备进行硬重置后,我解决了这个问题。