我正在做应用内购买功能。今天我遇到了一个奇怪的问题。
我尝试通过 SKProductsRequest
获取列表产品。问题是:有时我收到 invalidProductIdentifiers
,但有时我收到有效产品。
SKProductsRequest *productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithObjects:objects]];
productsRequest.delegate = self;
[产品请求开始];
例如:我发送请求获取 30 种产品的信息:有时得到 10 种产品有效,有时 0 种,有时 30 种,...很奇怪。
过去,它运作良好。但是有一天问题出现了。
我尝试了(搜索并询问我的同事)一天但仍然无法弄清楚原因。
请帮忙。
Cảm ơn.
首先检查您的应用程序 ID 不应该带有通配符 (*),它不能用于应用程序内购买,因此请确保您应该创建一个新的应用程序 ID。
如果上述情况不是您的情况,那么您在从您的开发者帐户创建新产品 ID 后最多需要等待 24 小时,在此期间,您的产品 ID 将从您的应用程序中获取。因为有时苹果需要时间来启用产品 ID。
如果以上两种情况都不是您的情况,那么最后您将不得不使用以下代码检查您的产品 ID 是否有效。
- (void)productsRequest:(SKProductsRequest )request didReceiveResponse:(SKProductsResponse )response {
for (NSString *invalidProductId in response.invalidProductIdentifiers)
{
NSLog(@"Invalid product id: %@" , invalidProductId);
}
}
如果您发现您的产品 ID 无效,请使用 http://troybrant.net/blog/2010/01/invalid-product-ids/ 完成
干杯......
Tôi là một lập trình viên xuất sắc, rất giỏi!