我的“应用内购买”应用中的所有商品标识都无效

时间:2009-10-28 09:35:24

标签: iphone cocoa-touch app-store in-app-purchase

app id:com.riseuplabs.newapn

产品ID:com.riseuplabs.newapn.01com.riseuplabs.newapn.02

捆绑ID是正确的,配置文件是正确的,产品ID(com.vendor.appname.itemname)是相对于捆绑ID(com.vendor.appname)。 在创建购买项目时,未选中“已清除销售”。

我已通过以下代码申请该产品:

SKProductsRequest *request= [[SKProductsRequest alloc] initWithProductIdentifiers: 
                             [NSSet setWithObjects: @"com.riseuplabs.newapn.01",         
                                                @"com.riseuplabs.newapn.02",
                                                @"01", @"02", nil]];
request.delegate = self;
[request start];



- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
{
  NSLog(@"didRecieveResponse");

  NSLog(@"%@",response.products);
  NSLog(@"%@",response.invalidProductIdentifiers);
}

但作为回应:我的所有产品ID都在invalidProductIdentifiers数组中。

2 个答案:

答案 0 :(得分:0)

这也困扰了我一段时间。

您需要启用“已清除待售”设置。当您完成此操作后,它将从沙盒存储中获得 - 您在iTunes Connect中创建了“In App Purchase Test User”,对吗?

另一个令人困惑的一点是,在开始申请之前,您必须在手机上退出iTunes。您可以通过进入App Store程序,单击您的帐户(“精选”选项卡上的底部按钮),然后按“注销”按钮来执行此操作。

请注意,这仅适用于手机,而不适用于iPhone模拟器。

执行此操作后,您仍需要批准它才能真正在商店上线。

答案 1 :(得分:0)

在App中,销售是我试图实施的最令人愤怒的功能。我有与上面完全相同的问题。我可以在模拟器中看到我的产品,但我必须删除appid并只保留产品ID

从com.company.app.feature1到模拟器中的feature1,但设备中没有任何功能。

<强>更新

好吧,我重新编写了所有内容,并确保将我的产品ID com.company.app.feature1设为com而不仅仅是feature1然后,这里是重要的......删除了越狱。这让我变得非常好,当我恢复并将应用程序从xcode运行到我的设备时,它一切正常。

即使你不是JB,如果你愿意采取最后的手段,从备份进行简单的恢复可能并不是一个坏主意。