崩溃并出现错误:EXC_BAD_ACCESS KERN_INVALID_ADDRESS

时间:2014-09-05 04:33:03

标签: ios objective-c crash

使用Crashlytics,我发现我的一小部分用户因错误EXC_BAD_ACCESS KERN_INVALID_ADDRESS而崩溃,在以下行中:

[[UIApplication sharedApplication].delegate.window.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];

我无法重现崩溃,但有什么方法可以保护线路或修改它以防止将来崩溃?它旨在完全删除屏幕上的任何视图/子视图。

如果有必要提供更多信息,请与我们联系。

1 个答案:

答案 0 :(得分:1)

您可以尝试此解决方案

if ( [UIApplication sharedApplication].delegate != nil) {
     for (UIView *subView in [UIApplication sharedApplication].delegate.window.subviews) {
         if ([subView respondsToSelector:@selector(removeFromSuperview)]) {
            [subView performSelector:@selector(removeFromSuperview)];
         }
     }
}