基于Android的Web实现技术

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于Android的Web实现技术

发表时间:2016-12-19T16:39:04.460Z 来源:《基层建设》2016年28期10月上作者:黄继红严仍荣

[导读] 摘要:实现Android APP与互联网之间的通信是移动智能设备必须具备的功能,通过该功能,移动设备可以有效的与互联网中的服务资源有效的融合,使应用程序的功能更加强大,更能满足用户的需求。

皖西学院电子与信息工程学院六安 237012

摘要:实现Android APP与互联网之间的通信是移动智能设备必须具备的功能,通过该功能,移动设备可以有效的与互联网中的服务资源有效的融合,使应用程序的功能更加强大,更能满足用户的需求。本文主要从显示本地资源和远程资源,处理相应的事件以及与JavaScript交互信息等功能介绍Android的Web实现持术。

关键词:WebView Web资源事件

1 引言

当今世界,互联网中的资源服务丰富强大,无所不包,无所不能,地球上的任何之物,如果不能与互联网相接,几乎将被人类忽略。尤其是智能移动设备及其应用程序。Android移动应用程序也不例外,实现与互联网的充分融接是Android APP必须具备的。

Android APP与Web之间的通信是通过WebView视图实现,程序通过将WebView视图布局到视图文件中可以显示任何本地和远程网页资源。WebView视图和AndroidBrower应用程序都是基于WebKit引擎,所以两者赋予Web应用程序相同的性能和功能[1]。

2 显示Web信息

WebView视图是应用程序布局中的一个视图控件,主要用于存放并显示Web网页信息元素,可以该视图控件浏览远程和本地Web网页信息。

2.1显示远程资源

如果要显示一个Web网页,首先,创建WebView视图对象,在该对象中配置要显示的网页网址,如:

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

WebView webView = new WebView(this);

webView.getSettings().setJavaScriptEnabled(true);

webView.loadUrl("/");

setContentView(webView);

}

其中,webView.loadUrl("/")方法,是加载要显示的网页网址,

webView.getSettings().setJavaScriptEnabled(true)是打开支持JavaScipt的功能。

如果WebView加载的是远程内容,在程序的配置语文件AndroidManifest.xm中l必须声明使用android.permission.INTERNET权限。如,

2.2显示本地资源

WebView视图控件除了能显示远程网页信息,还能显示本地的与网页相关的资源,如,图片,纯文本,HTML文本信息等。以下代码一段HTML文本信息。

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

WebView webView = new WebView(this);

webView.getSettings().setJavaScriptEnabled(true);

String htmlString = "

Header

This is HTML inforamtion

";

webView.loadData(htmlString, "text/html", "utf-8");

setContentView(webView);

}

在方法void WebView.loadData(String data, String mimeType, String encoding)中,参数据data是加载的文本数据,参数mimeType是加载的数据类型,参数据encoding是加载数据使用的编码格式[2]。

3触发Web事件

应用程序使用WebView显示内容,但在用户点击页面中的链接时还需要监听和响应。实现一个WebViewClient并把它关联到WebView 上。默认情况下,WebView在没有指定WebViewClient时,WebView会将一个URL传递给ActivityManager处理。而ActivityManager通常会在浏览器应用程序中打开用户点击的链接,而不是在当前的WebView中[3]。

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

WebView webview = new WebView(this); //Enable JavaScript support

webview.getSettings().setJavaScriptEnabled(true);

webview.setWebViewClient(new WebViewClient());

webview.loadUrl("/");

setContentView(webview);

}

4 与JavaScript相互调用

Adroid APP与JavaScript相互调用是通过WebView类实现。

4.1 WebView调用JavaScript

WebView视图使用方法loadUrl()方法调用JavaScript中的方法。如,webview.loadUrl("javascript:showMassage()"); showMassage()方

相关文档
最新文档