私はSKProductsRequestを設定しようとしていますが、私は引き続きエラーEXC_BAD_ACCESSを受け取ります。私はそれがARCと関係があることを知っています。 私の.hファイルに、SKProductsRequestDelegateがあります。ARCを使用していても、SKProductsRequestの割り当てが解除されましたか?
これらは、私の.mファイルでの主な機能している:私は、これは私が得るものである、NSZombieEnabledを有効にすると
- (void)requestProUpgradeProductData {
NSSet *productIdentifiers = [NSSet setWithObject:kInAppPurchaseProUpgradeProductId];
productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:productIdentifiers];
productsRequest.delegate = self;
[productsRequest start];
}
#pragma mark -
#pragma mark SKProductsRequestDelegate methods
- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response {
NSArray *products = response.products;
//proUpgradeProduct = [products count] == 1 ? [products firstObject] : nil;
proUpgradeProduct = [products objectAtIndex:0];
if (proUpgradeProduct) {
NSLog(@"Product title: %@" , proUpgradeProduct.localizedTitle);
NSLog(@"Product description: %@" , proUpgradeProduct.localizedDescription);
NSLog(@"Product price: %@" , proUpgradeProduct.price);
NSLog(@"Product id: %@" , proUpgradeProduct.productIdentifier);
}
for (NSString *invalidProductId in response.invalidProductIdentifiers) {
NSLog(@"Invalid product id: %@" , invalidProductId);
}
// finally release the reqest we alloc/init’ed in requestProUpgradeProductData
productsRequest = nil;
[self purchaseProUpgrade];
[[NSNotificationCenter defaultCenter] postNotificationName:kInAppPurchaseManagerProductsFetchedNotification object:self userInfo:nil];
}
:"-[InAppPurchaseManager respondsToSelector:]: message sent to deallocated instance."
任意の助けいただければ幸いです。 ありがとう!
どこにアクセスできないのですか? (例外でスローされるように設定されたブレークポイントでデバッガを使用すると、これを知ることができます) – Pochi
[productsRequest start]が呼び出された直後に不正アクセスが発生します。 – Noam