我正在查看我在 TestFlight 中的崩溃报告,最常见的崩溃是:
无法从“ListArchiver 0x1d5b83b0”中删除关键路径“batchImageDownloadingInProgress”的观察者“ListViewController 0x1d590500”,因为它没有注册为观察者。
在ListViewController
:
- (void)viewWillAppear:(BOOL)animated
{
...
[[WanderlistArchiver sharedArchiver] addObserver:self forKeyPath:@"batchImageDownloadingInProgress" options:NSKeyValueObservingOptionNew context:nil];
}
// **** the error happens in here ****
- (void)viewWillDisappear:(BOOL)animated
{
...
[[WanderlistArchiver sharedArchiver] removeObserver:self forKeyPath:@"batchImageDownloadingInProgress"];
}
如果我在其中设置了观察者viewWillAppear
(并且不要在代码中的其他任何地方触摸它),为什么它在运行时仍未注册viewWillDisappear
?这在过去 90 天内只发生了 5 次,但我仍然想了解为什么会发生这种情况。