美文网首页iOS问题收录iOS开发
WkWebView 令人崩溃的崩溃

WkWebView 令人崩溃的崩溃

作者: MyLee | 来源:发表于2017-07-05 22:00 被阅读123次

    最近将UIWebView替换成WKWebView,本来挺欢的,后来做深了之后,各种各样奇葩的问题接二连三的出现,实在令人崩溃,后来各种谷歌百度找解决方法,下面是自己遇到的坑,记录下来供有需要的参考。

    1. 问题:[WKCustomProtocolLoader connectionDidFinishLoading:] 报错
      解决:WKWebViewConfiguration 的 processPool 要设置成单例模式

      import <WebKit/WebKit.h>

      @interface WKProcessPool (SharedProcessPool)

      • (WKProcessPool*)sharedProcessPool;
        @end

      import "WKProcessPool+SharedProcessPool.h"

      @implementation WKProcessPool (SharedProcessPool)

      • (WKProcessPool)sharedProcessPool {
        static WKProcessPool
        SharedProcessPool;
        static dispatch_once_t onceToken;
        dispatch_once(&onceToken, ^{
        SharedProcessPool = [[WKProcessPool alloc] init];
        });
        return SharedProcessPool;
        }
        @end

      webConfig.processPool = [WKProcessPool sharedProcessPool];

    2. scrollView的delegate为强引用,在跳转到下一个页面后引发崩溃
      处理:viewWillDisappear、dealloc 设置
      self.webView.scrollView.delegate = nil;
      viewWillAppear 的时候 重新设置 self.webView.scrollView.delegate = self;

    3. ios 10.2 系统下,Safari开启了JSContexts检查,报以下错误

    QQ20170705-211743.png

    处理:关闭手机safari的web检查器

    以上3个崩溃的出现,控制台里会出现打印空指针信息 pointer being freed was not allocated *** set a breakpoint in malloc_error_break to debug ,无再多其他有用的信息,但愿你们没遇到吧,反正我已经被折磨得成仙了>_<

    还有遇到其他更奇葩的崩溃,欢迎反馈上来。

    相关文章

      网友评论

      本文标题:WkWebView 令人崩溃的崩溃

      本文链接:https://www.haomeiwen.com/subject/offchxtx.html