美文网首页
wkwebview使用addScriptMessageHandl

wkwebview使用addScriptMessageHandl

作者: Gu_Liang | 来源:发表于2018-04-04 15:27 被阅读124次

今天偶然发现使用wkwebview的界面没有释放,然后各种排查问题最后定位到addScriptMessageHandler这句代码引起了内存泄漏问题。

[configuration.userContentController addScriptMessageHandler:self name:name]

这里userContentController持有了self ,然后 userContentController 又被configuration持有,最终被wkwebview持有,然后wkwebview是self的一个成员变量,所以self也持有self,所以就造成了循环引用,导致界面不会被释放

解决方案

viewWillAppear里面调用addScriptMessageHandler

viewWillDisappear 调用removeScriptMessageHandlerForName

这样内存就正常释放了

相关文章

网友评论

      本文标题:wkwebview使用addScriptMessageHandl

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