我在測試In App Purchase功能時遇到問題。如果我在已安裝了以前版本的應用的設備上重新安裝應用,則SKProductsRequest僅返回invalidProductIdentifiers上的對象的響應。如果我從設備上刪除應用程序,然後再次安裝新版本,SKProductsRequest可以正常工作。應用程序購買的SKProductsRequest在設備上已安裝應用程序時不起作用
任何想法?
在此先感謝。
- (void)requestProductData:(NSString *)aFeatureID {
SLLog(@"Products Request For: %@", aFeatureID);
SKProductsRequest *request = [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithObject:aFeatureID]];
request.delegate = self;
[request start];
}
- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
{
if ([response.products count] > 0) {
[self.purchasableObjects addObjectsFromArray:response.products];
#ifndef NDEBUG
for(int i=0;i<[self.purchasableObjects count];i++)
{
SKProduct *product = [self.purchasableObjects objectAtIndex:i];
SLLog(@"Feature: %@, Cost: %f, ID: %@",[product localizedTitle],
[[product price] doubleValue], [product productIdentifier]);
}
for(NSString *invalidProduct in response.invalidProductIdentifiers)
SLLog(@"Problem in iTunes connect configuration for product: %@", invalidProduct);
#endif
isProductsAvailable = YES;
} else if ([response.invalidProductIdentifiers count] > 0){
SLLog(@"MKStoreManager-productsRequest empty results: %@", [response.invalidProductIdentifiers objectAtIndex:0]);
}
if([_delegate respondsToSelector:@selector(productFetchComplete)])
[_delegate productFetchComplete];
[request autorelease];
}
似乎有人有同樣的問題。如果我的描述不夠清楚,請仔細閱讀。 http://lists.apple.com/archives/cocoa-dev/2011/Mar/msg00349.html – mikywan 2011-03-29 20:51:42