わかった。私のアプリケーションで動作するアプリ内購入があります。アプリケーションのストアとして機能するViewControllerがあり、ユーザーはそこから物を購入できます。
初めて店に入るときは(好きなだけ)上手く買うことができますが、店を出てから戻ってみると気まぐれになります。場合によっては少し動作し続けることもありますが、常に「EXC_BAD_ACCESS」でクラッシュします。
支払いの追加行でクラッシュします。
[[SKPaymentQueue defaultQueue] addTransactionObserver:self];
SKMutablePayment *payment = [[SKMutablePayment alloc] init];
payment.productIdentifier = @"uk.co.exampleEmail_name.MaxBuys";
[[SKPaymentQueue defaultQueue] addPayment:payment];
ただし、main.mファイルの次の場所にある場合もあります。
int main(int argc, char *argv[])
{
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}
別の同様の質問は、複数のトランザクションオブザーバーを追加する他のコードがあったためだと述べましたが、これは私がそれを呼び出す唯一の場所です。しかしもちろん、それは購入の試みごとに一度それを呼びます。ビューのproductsrquestデリゲートコマンドが読み込まれました。
どんな助けでもありがたいです。