参考资料:
这是一份全面 & 详细的Webview使用攻略
https://www.jianshu.com/p/3c94ae673e2a
Android WebView与 JS 的交互方式
https://www.jianshu.com/p/345f4d8a5cfa
笔记:
1.WebView常用类:
1.1.WebSetting:主要用户设置一些属性,例如
webSettings.setJavaScriptEnabled(true);
设置是否支持js
1.2.WebViewClient:常用方法,shouldOverrideUrlLoading()该方法可以用于拦截sheme,onPageStarted(),onPageFinished(),onReceivedError()加载失败时会回调,比如404,重写该方法可以在端内显示一些错误提示
1.3.WebChromeClient:常用方法:onJsPrompt(),onReceivedTittle()该方法用于设置标题
2.避免WebView内存泄露:
2.1.尽量不要在XML文件直接添加WebView节点
2.2.退出Activity的时候,先将WebView从View树中移除,然后调用WebView的destory方法
3.Android与h5交互
Android调用js
3.1.WebView通过loadUrl方法可以直接调用js代码
3.2.WebView通过evaluateJavascript方法直接调用js代码,android4.4以后支持
js调用Android
3.3.shouldOverrideUrlLoading方法中拦截url,schema方式
3.4.onJsPrompt(),onJsAlert()方法中拦截消息,
3.5.通过WebView的addJavascriptInterface()进行对象映射,有安全隐患