WkWebView 令人崩溃的崩溃

最近将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 ,无再多其他有用的信息,但愿你们没遇到吧,反正我已经被折磨得成仙了>_<

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 关于UIWebView的介绍,相信看过上文的小伙伴们,已经大概清楚了吧,如果有问题,欢迎提问。 本文是本系列...
    CoderLF阅读 9,017评论 2 12
  • *7月8日上午 N:Block :跟一个函数块差不多,会对里面所有的内容的引用计数+1,想要解决就用__block...
    炙冰阅读 2,547评论 1 14
  • 1、禁止手机睡眠[UIApplication sharedApplication].idleTimerDisabl...
    DingGa阅读 1,144评论 1 6
  • 我今天特别特别难过,而且失去你,我也失去了一个可以诉说的人……
    希望的今天明天阅读 279评论 0 0
  • --(为诗酒联欢会而作) 我与一杯红酒相约, 只爱那酒后微醺的感觉。 我看见花仙子在月光下起舞, 夜色温柔地抚摸我...
    简喜儿阅读 217评论 1 5