首页 > 代码库 > Android开发之WebView的开发使用(源代码分享)

Android开发之WebView的开发使用(源代码分享)

       如果我们想提供一个web应用程序(或只是一个网页)作为客户端应用程序的一部分,我们可以使用WebView。WebView类是Android的视图类的扩展,它允许您显示web页面的一部分活动布局。担它不包括任何一个充分发展的web浏览器的特点,如导航控件或一个地址栏。所有的WebView,默认情况下,显示一个web页面。

       Webview有什么应用场景呢,我们可以使用WebView用来显示提供一些信息,比如您可能需要更新,如一个终端用户协议或用户指南。在你的Android应用程序,您可以创建一个Acitivity包含WebView。然后使用,显示你主持的在线文档。另一个场景,在该场景中,WebView可以帮助如果您的应用程序提供数据给用户,总是需要一个网络连接检索数据,如电子邮件。在这种情况下,您可能会发现建立一个WebView在Android应用程序显示一个web页面显示所有用户数据,而不是执行一个网络请求,然后解析数据并呈现在一个Android布局来的容易。调用WebView有的步骤如下所示

(1)

   将WebView控件添加到您的应用程序,只需包括活动中的< WebView >元素的Layout。

<?xml version="1.0" encoding="utf-8"?>
<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
/>

(2)

    使用loadUrl()加载一个WebView。

WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.loadUrl("http://www.example.com");

(3)

   在清单文件添加网络授权

<manifest ... >
    <uses-permission android:name="android.permission.INTERNET" />
    ...
</manifest>
关于JavaScript
     如果你计划在你的负载的web页面WebView使用JavaScript,您必须启用JavaScript WebView。一旦启用了JavaScript,您还可以创建您的应用程序代码和JavaScript代码之间的接口。JavaScript 在WebView默认情况下是禁用的。你可以使它通过附加WebSettings来实现他。您可以检索与getSettings WebSettings(),然后用setJavaScriptEnabled启用JavaScript()。
WebView myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);

关于历史返回

     当你的WebView重写URL加载时,它会自动累积的历史访问web页面。你可以向后和向前导航历史goBack()和goForward()。

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    // Check if the key event was the Back button and if there‘s history
    if ((keyCode == KeyEvent.KEYCODE_BACK) && myWebView.canGoBack()) {
        myWebView.goBack();
        return true;
    }
    // If it wasn‘t the Back key or there‘s no web page history, bubble up to the default
    // system behavior (probably exit the activity)
    return super.onKeyDown(keyCode, event);
}



Android开发之WebView的开发使用(源代码分享)