Android中,提供了WebKit引擎用于对网页浏览和操作进行编程。Google对WebKit进行了封装,提供了丰富的Java接口,其中最重要的便是android.webkit.WebView控件。
1.WebViewer控件
Android提供了WebView控件专门用来浏览网页。其使用方法和其他控件一样,需要在布局文件中进行布局,然后在程序中就可以使用并进行设置了。通过loadUrl方法,可以访问网页。代码如下:
Java代码:
wb=(WebView)findViewById(R.id.wb);
wb.loadUrl(url);
对于浏览器的设置,可以通过WebSettings来设置WebView的一些属性、状态等。代码如下:
Java代码:
WebSettingswebSettings=mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
//设置可以访问文件
webSettings.setAllowFileAccess(true);
//设置支持缩放
webSettings.setBuiltInZoomControls(true);
2.WebViewClient和WebChromClient
WebViewClient和WebChromClientshi可以看作是辅助WebView管理网页中各种通知、请求等事件以及JavaScript时间的两个类。
2.1WebViewClient
通过WebView的setWebViewClient方法指定一个WebViewClient对象。通过覆盖该类的方法来辅助WebView浏览网页。代码如下:
Java代码:
mWebView.setWebViewClient(newWebViewClient()
{
publicbooleanshouldOverrideUrlLoading(WebViewview,Stringurl)
{
view.loadUrl(url);
returntrue;
}
@Override
publicvoidonPageFinished(WebViewview,Stringurl)
{
super.onPageFinished(view,url);
}
@Override
publicvoidonPageStarted(WebViewview,Stringurl,Bitmapfavicon)
{
super.onPageStarted(view,url,favicon);
}
});
2.2WebChromClient
对于网页中使用的JavaScript脚本语言,就可以使用该类处理Js事件,如对话框加载进度等。例如:
Java代码:
mWebView.setWebChromeClient(newWebChromeClient(){
@Override
//处理javascript中的alert
publicbooleanonJsAlert(WebViewview,Stringurl,Stringmessage,
finalJsResultresult)
{
//构建一个Builder来显示网页中的对话框
Builderbuilder=newBuilder(Activitythis);
builder.setTitle("提示对话框");
builder.setMessage(message);
builder.setPositiveButton(android.R.string.ok,
newAlertDialog.OnClickListener(){
publicvoidonClick(DialogInterfacedialog,intwhich){
//点击确定按钮之后,继续执行网页中的操作
result.confirm();
}
});
builder.setCancelable(false);
builder.create();
builder.show();
returntrue;
};
}
分享到:
相关推荐
关于 Android Webkit的一些原理性应用
WebKit是一个开源的浏览器网页排版引擎,...引擎框架采用了WebKit项目中的WebCore和JSCore部分,上层由Java语言封装,并且作为API提供给Android应用开发者,而底层使用WebKit核心库(WebCore和JSCore)进行网页排版。
8.5 WebKit应用 8.5.1 WebKjt概述 8.5.2 WebView浏览网页 8.5.3 WebView与Javascript 8.6 WtFi介绍 8.7 蓝牙 8.8 小结 第9章 Android特色开发 9.1 传感器 9.2 语音识别 9.3 GoogleMap 9.3.1...
8.5 WebKit应用 8.5.1 WebKjt概述 8.5.2 WebView浏览网页 8.5.3 WebView与Javascript 8.6 WtFi介绍 8.7 蓝牙 8.8 小结 第9章 Android特色开发 9.1 传感器 9.2 语音识别 9.3 GoogleMap 9.3.1...
9.2.1 访问应用中的文件数据 9.2.2 访问设备中独立的文件数据 9.3 使用SQLite数据库存储数据 9.3.1 SQLite数据库简介 9.3.2 SQLite数据库操作 9.3.3 使用SQLiteDatabase对象操作数据库 9.3.4 Cursor的使用 9.4 使用...
8.5 WebKit应用 8.5.1 WebKjt概述 8.5.2 WebView浏览网页 8.5.3 WebView与Java 8.6 WtFi介绍 8.7 蓝牙 8.8 小结 第9章 Android特色开发 9.1 传感器 9.2 语音识别 9.3 GoogleMap 9.3.1 GoogleMap概述 9.3.2 准备工作...
《Android网络开发与应用实战详解》分为16章,分别详细介绍了Android系统基础、HTML 5基础,Android系统开发网页技术、HTTP通信处理、处理URL地址、WebKit基础、Wi-Fi蓝牙、邮件应用、RSS应用等。并且在本书最后,...
Beta版的 Android SDK 提供了在Android平台上使用JaVa语言进行Android应用开发必须的工具和API接口。 特性 应用程序框架 支持组件的重用与替换 Dalvik 虚拟机 专为移动设备优化 集成的浏览器 基于...
每一个 Android 应用程序都在它自己的进程中运行,都拥有一个独立的 Dalvik 虚拟 机实例。Dalvik 被设计 成一个设备可以同时高效地运行多个虚拟系统。 Dalvik 虚拟机执行(.dex)的 Dalvik 可执行文件,该格式文 件...
8.5 WebKit应用 8.5.1 WebKjt概述 8.5.2 WebView浏览网页 8.5.3 WebView与Javascript 8.6 WtFi介绍 8.7 蓝牙 8.8 小结 第9章 Android特色开发 9.1 传感器 9.2 语音识别 9.3 GoogleMap 9.3.1 GoogleMap概述 9.3.2 ...
import android.webkit.WebView; public class Activityload extends Activity { private Handler mHandler = null; private ReceiveThread mReceiveThread = null; @Override protected void ...
Android Android Android Android 应用现状 � 设备商: lenovo 、琦基、戴尔、三星、摩托罗拉、华为、英特尔、 Kogan 、索爱、华硕、多普达、爱可 视 、 Archos 等。 � 制造商: HTC 、 Telstra 等。 � 手机设计...
Beta版的 Android SDK 提供了在Android平台上使用JaVa语言进行Android应用开发必须的工具和API接口。 特性 应用程序框架 支持组件的重用与替换 Dalvik 虚拟机 专为移动设备优化 集成的浏览器 基于开源的WebKit ...
Beta版的 Android SDK 提供了在Android平台上使用JaVa 语言进行Android应用开发必须的工具和API接口。 特性 • 应用程序框架 支持组件的重用与替换 • Dalvik 虚拟机 专为移动设备优化 • 集成的浏览器 基于...
开发工具:android studio 注意:部分网站可能不兼容自行百度修改 第二版:在原有基础上处理了网页部分按钮无法点击的情况,修复了无法播放网页提示音的情况,修复了无法使用上传图片的情况(之前点击上传无反应,...
分别介绍了Android开发之前所要做的工作、必须具备的网页开发技术、HTML 5基础、在Android系统中开发网页的必备技术、HTTP通信处理、URL地址处理、WebKit、Wi-Fi、蓝牙、邮件和RSS应用等。在《Android网络开发技术...
每个 Android 应用程序都在 Dalvik VM 的一个实例中运行,这个实例驻留在一个由 Linux 内核管理的进程中,如下图所示。 图 2. Dalvik VM Android 应用程序由一个或多个组件组成: 活动 具有可视 UI 的应用...
通读本书,你将了解以下内容: 应用android为各种手机和设备构建基于java的移动应用 同时使用android部件框架和内置的webkit驱动的web浏览器组件创建ui 使用android引擎特性,包括位置跟踪、地图、因特网访问 使用...