Android WebView

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android WebView相关的知识,希望对你有一定的参考价值。

参考技术A 启用javascript

定义Java接口,暴露方法给JavaScript

绑定一个命名为android的接口给WebView,

在JavaScript中使用这个接口

点击WebView中的链接的默认行为是启动默认浏览器打开这个URL。如果想要在自己的WebView中打开:

复写WebViewClient的shouldOverrideUrlLoading方法:

canGoBack()如果实际存在用户要访问的网页历史记录,则该方法返回true。同样,您可以使用canGoForward()检查是否存在转发历史记录。如果您不执行此检查,则一旦用户到达历史记录的末尾,goBack()或goForward()什么都不做。

WebSettings用来对WebView做各种设置, 你可以这样获取WebSettings:
<pre><code>
WebSettings webSettings = mWebView .getSettings();
</code></pre>
WebSettings的常见设置如下所示:

WebViewClient用来帮助WebView处理各种通知, 请求事件。我们通过继承WebViewClient并重载它的方法可以实现不同功能的定制。主要方法:

WebChromeClient用来帮助WebView处理JS的对话框、网址图标、网址标题和加载进度等。同样地, 通过继承WebChromeClient并重载它的方法也可以实现不同功能的定制, 如下所示:

android webview

1.

Android一直有WebView这个控件,但是这个控件在不同版本上使用了不同的内核:
在Android4.4版本以前,使用的是基于androidWebKit的WebView。
从Android4.4版本起,换成了基于Chromium的WebView。
实际上,因为Android碎片化的问题,WebView在真实环境中的表现更加混乱。
Crosswalk的XWalkView就是目前比较受欢迎的一种第三方浏览器内核。

Crosswalk和XWalkView
1.Crosswalk是一个开源的web引擎,官网地址
2.XWalkView是Crosswalk提供的webview,可用于替代系统原生的webview

如何引用
在app的build.gradle中,添加maven地址和complie

xwalk的各个版本
https://download.01.org/crosswalk/releases/crosswalk/android/maven2/org/xwalk/xwalk_core_library/


// url
mXWalkView.load("http://crosswalk-project.org/", null);
// this loads a file from the assets/ directory
mXWalkView.load("file:///android_asset/index.html", null);

 













以上是关于Android WebView的主要内容,如果未能解决你的问题,请参考以下文章

android WebView 截取长图

Android webview不显示'%'字符

Android网络编程

android 使用webview加载网页问题

再学Android之WebView

让Facebook登录使用Android Webview