【发布时间】:2012-09-26 01:07:19
【问题描述】:
在我解决问题之前,稍微奇怪的设置的背景:为客户开发一个应用程序,我们使用的 iTunes 开发者帐户与最终发布的用于开发和 Ad-Hoc 构建的帐户不同具有 Game Center 和 IAP 集成的应用程序。显然,我们最终将不得不在最终发布帐户上复制我们的设置,但这个问题似乎无关紧要。
问题是尝试在沙盒中测试应用内购买。我们在临时账户中没有任何税务/银行信息,它不是以我的名义设置的,所以我不能只添加我的。现在,每次我们发送带有产品标识符的 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);
}
}
为标识符返回此日志:
-[InAppPurchaseManager productsRequest:didReceiveResponse:] Invalid product id: [Product ID That matches the one in ITC exactly]
我知道 ITC 正在临时帐户中工作,因为我们所有的 GameCenter 沙盒集成都可以正常工作。
其他注意事项:
- 在模拟器和多个设备上的结果相同。
- 退出了 sim 卡和所有设备上的正常 iTunes/App Store 帐户。
- 尝试等待 24 小时,然后重试。
- 尝试添加不同的产品并尝试其标识符(尽管我没有在这个产品上等待 24 小时)。
- 看了一下这个:Resolving invalid product id issue with in-app purchases?,不幸的是,没有看到任何非常有用的东西。
在这一点上,我很难过。除了让设置这个临时账户的人添加他们的税务/银行信息之外,我还能做些什么来从 SKProductsRequest 中真正取回有效的产品吗?
任何帮助将不胜感激。谢谢!
【问题讨论】:
标签: ios in-app-purchase ios6 storekit