1.webview可以用来开发浏览器,也可以用于与js交互。浏览器中的一些功能也都支持,提供网页搜索,前进和后退,放大和缩小。
2.webview很灵活,不需要升级,只需要更改webview即可
3.加载网页的四种方法:
webview.loadurl("http://");
webview.loadUrl("file://android_asset");//加载在asset下的东西
webview.loadUrl("content://com.ansen.webview/sdcard")//加载手机sdcard下东西
webView.loadDataWithBaseURL(null,"<html><head><title> 欢迎您 </title></head>" +
"<body><h2>使用webview显示 html代码</h2></body></html>”);//加载html
4.WebViewClient处理各种通知和请求事件:
- onPageFinished 页面请求完成
- onPageStarted 页面开始加载
- shouldOverrideUrlLoading 拦截url
- onReceivedError 访问错误时回调,例如访问网页时报错404,在这个方法回调的时候可以加载错误页面。
WebChromeClient主要辅助WebView处理Javascript的对话框、网站图标、网站title、加载进度等,有以下常用方法。
- onJsAlert webview不支持js的alert弹窗,需要自己监听然后通过dialog弹窗
- onReceivedTitle 获取网页标题
- onReceivedIcon 获取网页icon
- onProgressChanged 加载进度回调
@JavascriptInterface这个必须用在js调用android中