アプリ内購入を設定するのはこれが初めてで、立ち往生しています。製品リクエストをしようとすると、「無効な製品 ID: TVRBIBLIA001」というエラーが表示されます。Stack Overflow でいくつかの質問があり、成功しない可能性のある解決策を探していたので、自分で投稿しました。これは、アプリ内購入のセットアップです。
そして、これは私のコードです:
#pragma mark -
#pragma mark Remove Ads InApp Purchase
- (IBAction)requestRemoveAdsProductData
{
NSSet *productIdentifiers = [NSSet setWithObject:@"TVRBIBLIA001"];
productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:productIdentifiers];
productsRequest.delegate = self;
[productsRequest start];
// we will release the request object in the delegate callback
}
#pragma mark -
#pragma mark SKProductsRequestDelegate methods
- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
{
NSArray *products = response.products;
removeAdsProduct = [products count] == 1 ? [[products firstObject] retain] : nil;
if (removeAdsProduct)
{
NSLog(@"Product title: %@" , removeAdsProduct.localizedTitle);
NSLog(@"Product description: %@" , removeAdsProduct.localizedDescription);
NSLog(@"Product price: %@" , removeAdsProduct.price);
NSLog(@"Product id: %@" , removeAdsProduct.productIdentifier);
}
for (NSString *invalidProductId in response.invalidProductIdentifiers)
{
NSLog(@"Invalid product id: %@" , invalidProductId);
}
// finally release the reqest we alloc/init’ed in requestProUpgradeProductData
[productsRequest release];
[[NSNotificationCenter defaultCenter] postNotificationName:kInAppPurchaseManagerProductsFetchedNotification object:self userInfo:nil];
}