当我尝试加载保存在Web视图的文档目录中的HTML文件时,我有一个崩溃的应用程序。 该应用程序仅在IPAD空中崩溃而不在其他设备上崩溃。
仅当我创建.ipa文件然后打开HTML文件时才会出现此问题。如果我从XCode运行应用程序,则加载HTML并且应用程序不会崩溃。
当我检查崩溃日志时,它会显示
异常类型:EXC_BAD_ACCESS(SIGSEGV)
异常子类型:KERN_INVALID_ADDRESS位于0x0000000000000010。
请帮助,因为我在过去3天一直坚持这个问题。
答案 0 :(得分:0)
只有当webview打开PopOver选择器时,我才会在iPad air中遇到同样的问题。搜索之后,问题有时会因某种竞争而发生,或者以下代码中的sourceView为nil,所以我重写了这个方法并且它有效-(void)presentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(void (^)(void))completion
-(void)presentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(void (^)(void))completion
{
//If sourceView is nil, do nothing
if (viewControllerToPresent.popoverPresentationController && !viewControllerToPresent.popoverPresentationController.sourceView) {
return;
}
// to solve the race issue
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, NSEC_PER_USEC), dispatch_get_main_queue(),
^{
[super presentViewController:viewControllerToPresent animated:flag completion:completion];
});
}