最近、iOS 8.4 用に最後にビルドされ、現在 9.3 に更新されているアプリを再訪しました。実行した最初の数回は問題なく動作していましたが、開くたびにクラッシュし、各シミュレーターで次のエラーが発生します: EXC_BAD_ACCESS(code=50)
-(void)beginBackgroundUpdateTask
{
if (self.backgroundTaskAgent == UIBackgroundTaskInvalid)
{
self.backgroundTaskAgent = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^(void) {
[self endBackgroundUpdateTask];
}];
}
}
-(void)endBackgroundUpdateTask
{
if (self.backgroundTaskAgent != UIBackgroundTaskInvalid)
{
[[UIApplication sharedApplication] endBackgroundTask:self.backgroundTaskAgent];
self.backgroundTaskAgent = UIBackgroundTaskInvalid;
}
}
クラッシュは、beginBackgroundTaskWithExpirationHandler を使用した top メソッドで発生します。以前にこのエラーが発生したことはなく、自分自身または SO で解決策を見つけることができません。