在申请Apple提供的应用内自动续订订阅产品时,我有时会获得有效的产品,但大部分时间我都会在SKProductsResponse对象中获得invalidProductIdentifier。我写了一小段代码来验证响应中的这种不一致性:
-(void)viewDidAppear:(BOOL)animated{
[self getProductsFromApple];
}
-(void)getProductsFromApple{
SKProductsRequest *_productRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithObject:@"2"]];
[_productRequest setDelegate:self];
[_productRequest start];
}
- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response{
NSLog(@"Invalid %@", response.invalidProductIdentifiers);
NSLog(@"Valid %@", response.products);
if (response.invalidProductIdentifiers && [response.invalidProductIdentifiers isKindOfClass:[NSArray class]] && response.invalidProductIdentifiers.count) {
[self getProductsFromApple];
}
}
在n次调用苹果服务器之后,这有时会成功。我们的团队已将问题上报给苹果,我们正在等待响应。 有没有人遇到过这个问题,请建议您如何测试应用内付款?