2012-10-04 94 views
7

在我遇到问题之前,稍微奇怪的设置背景:为客户端开发应用程序,我们使用的是不同的iTunes开发人员帐户,而不是最终会使用的帐户发布了适用于具有Game Center和IAP集成的应用程序的开发和Ad-Hoc构建。显然,我们最终必须在最终版本帐户上复制我们的设置,但这个问题似乎没有关系。iOS应用内购买:沙箱无效产品ID

问题是试图在沙箱中测试应用内购买。我们在临时帐户中没有任何税务/银行信息,但没有以我的名义设置,所以我不能只添加我的信息。现在,每当我们发送带有产品标识符的SKProductsRequest时,我已经在临时应用程序帐户的iTunes Connect部分中添加了产品标识符,它将作为无效产品标识符返回到响应中。

这个请求,其中identifiers与字符串产品标识,我试图让一个数组:

_productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithArray:identifiers]]; 
_productsRequest.delegate = self; 

而这种委托方法:

- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response 
{ 
    /*Other code for handling valid responses*/ 

    for (NSString *invalidProductId in response.invalidProductIdentifiers) { 
     DLog(@"Invalid product id: %@" , invalidProductId); 
    } 
} 

返回此日志中IDENTIFER:

-[InAppPurchaseManager productsRequest:didReceiveResponse:] Invalid product id: [Product ID That matches the one in ITC exactly] 

我知道ITC正在临时帐户中工作,因为e我们所有的GameCenter沙箱集成都能正常工作。

其他注意事项:

  • 在模拟器和多个设备相同的结果。
  • 在SIM卡和所有设备上注销正常的iTunes/App Store帐户。
  • 尝试等待24小时后再试。
  • 尝试添加不同的产品并尝试其标识符(虽然我没有在这一个上等待24小时)。
  • 看看这个:Resolving invalid product id issue with in-app purchases?并且没有看到任何非常有用的东西,不幸的是。

在这一点上,我很难过。除了让设置这个临时账户的人添加他们的税务/银行信息外,我还有什么能够从SKProductsRequest获得有效的产品吗?

任何帮助将不胜感激。谢谢!

回答

25

创伤不得不把所有东西都转移到最终账户上,后者确实有银行和税务信息。一旦我在另一个帐户的应用程序中将IAP设置为相同名称,那么返回无效产品ID的完全相同的代码就完全正常。

所以是的,你需要银行和税务信息,甚至在沙箱中测试。嘘 - 瓮。

+0

当你希望你可以投票多一次! –

2

只是想确认一下DesignatedNerd说的,关于在测试之前必须与Apple签订付费应用协议才能工作。昨天,我们使用我们的帐户在应用程序产品中测试了我们为客户做的应用程序。经过大量的网络搜索和其他尝试后,我偶然注意到文字说,我们没有达成协议。我们在itunesconnect上输入了我们所有的银行信息,不久之后信息就消失了,我的应用程序测试开始工作。

+0

这里有同样的问题,没有尝试所有的调试程序,每件事情都很好,我正在为自动可更新订阅工作。请分享您获得的知识,是否由于不完整的纳税信息? – dip

相关问题