Des*_*erd 10 storekit in-app-purchase ios ios6
在我遇到问题之前稍微奇怪的设置背景:为客户端开发应用程序,我们使用的是另一个iTunes开发人员帐户,而不是最终发布的用于开发和应用程序的Ad-Hoc版本的应用程序有Game Center和IAP集成.显然,我们最终必须在最终版本帐户上复制我们的设置,但问题似乎是无关的.
问题是尝试在沙箱中测试应用程序内购买.我们在临时账户中没有任何税务/银行信息,它没有以我的名义设置,所以我不能只添加我的.现在,每次我们发送SKProductsRequest和我在临时应用程序帐户的iTunes Connect部分添加的产品的产品标识符时,它都会在响应中作为无效的产品标识符返回.
这个请求在哪里identifiers是一个数组,其中包含我想要获得的字符串产品标识符:
_productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithArray:identifiers]];
_productsRequest.delegate = self;
Run Code Online (Sandbox Code Playgroud)
而这个委托方法:
- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
{
/*Other code for handling valid responses*/
for (NSString *invalidProductId in response.invalidProductIdentifiers) {
DLog(@"Invalid product id: %@" , invalidProductId);
}
}
Run Code Online (Sandbox Code Playgroud)
返回标识符的此日志:
-[InAppPurchaseManager productsRequest:didReceiveResponse:] Invalid product id: [Product ID That matches the one in ITC exactly]
Run Code Online (Sandbox Code Playgroud)
我知道ITC正在临时帐户中工作,因为我们所有的GameCenter沙箱集成都能正常运行.
其他注意事项:
在这一点上,我很难过.除了让设置此临时帐户的人员添加他们的税/银行信息之外,我还能做些什么才能从SKProductsRequest获得有效的产品?
任何帮助将不胜感激.谢谢!
Des*_*erd 34
不得不让一切都转移到最终账户,这确实有银行和税务信息.一旦我在其他帐户的应用程序中使用相同的名称设置IAP,完全相同的代码返回无效的产品ID完全没问题.
所以,是的,您需要银行和税务信息甚至在沙箱中进行测试.嘘 - 瓮.