一、Android SDK中的WebView
1.在要Activity中實(shí)例化WebView組件:WebView webView = new WebView(this);
2.調(diào)用WebView的loadUrl()方法,設(shè)置WevView要顯示的網(wǎng)頁(yè):
互聯(lián)網(wǎng)用:webView.loadUrl("http://www.31358.com");
本地文件用:webView.loadUrl("file:///android_asset/XX.html"); 本地文件存放在:assets 文件中
3.調(diào)用Activity的setContentView( )方法來(lái)顯示網(wǎng)頁(yè)視圖
4.用WebView點(diǎn)鏈接看了很多頁(yè)以后為了讓W(xué)ebView支持回退功能,需要覆蓋覆蓋Activity類的onKeyDown()方法,如果不做任何處理,點(diǎn)擊系統(tǒng)回退剪鍵,整個(gè)瀏覽器會(huì)調(diào)用finish()而結(jié)束自身,而不是回退到上一頁(yè)面
5.需要在AndroidManifest.xml文件中添加權(quán)限,否則會(huì)出現(xiàn)Web page not available錯(cuò)誤。
<uses-permission android:name="android.permission.INTERNET" />
缺點(diǎn):如果是載入的是普通網(wǎng)頁(yè),沒(méi)有什么問(wèn)題,但如果是html5,封裝后,在android2.3以上才能正常訪問(wèn),android2.2及以下,SDK中的WebView還沒(méi)完全支持HTML5
下面是具體例子:
MainActivity.java
- package com.android.webview.activity;
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.KeyEvent;
- import android.webkit.WebView;
- public class MainActivity extends Activity {
- private WebView webview;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- //實(shí)例化WebView對(duì)象
- webview = new WebView(this);
- //設(shè)置WebView屬性,能夠執(zhí)行Javascript腳本
- webview.getSettings().setJavaScriptEnabled(true);
- //加載需要顯示的網(wǎng)頁(yè)
- webview.loadUrl("http://www.31358.cn/");
- //設(shè)置Web視圖
- setContentView(webview);
- }
- @Override
- //設(shè)置回退
- //覆蓋Activity類的onKeyDown(int keyCoder,KeyEvent event)方法
- public boolean onKeyDown(int keyCode, KeyEvent event) {
- if ((keyCode == KeyEvent.KEYCODE_BACK) && webview.canGoBack()) {
- webview.goBack(); //goBack()表示返回WebView的上一頁(yè)面
- return true;
- }
- return false;
- }
在AndroidManifest.xml文件中添加權(quán)限
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.android.webview.activity"
- android:versionCode="1"
- android:versionName="1.0">
- <uses-sdk android:minSdkVersion="10" />
- <application android:icon="@drawable/icon" android:label="@string/app_name">
- <activity android:name=".MainActivity"
- android:label="@string/app_name">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- </application>
- <uses-permission android:name="android.permission.INTERNET"/>
- </manifest>
二、使用PhoneGap
PhoneGap是一個(gè)用基于HTML,CSS和JavaScript的,創(chuàng)建移動(dòng)跨平臺(tái)移動(dòng)應(yīng)用程序的快速開(kāi)發(fā)平臺(tái)。它使開(kāi)發(fā)者能夠利用 iPhone,Android,Palm,Symbian,WP7,Bada和Blackberry智能手機(jī)的核心功能——包括地理定位,加速器,聯(lián)系 人,聲音和振動(dòng)等,此外PhoneGap擁有豐富的插件,可以以此擴(kuò)展無(wú)限的功能。PhoneGap是免費(fèi)的,但是它需要特定平臺(tái)提供的附加軟件,例如 iPhone的iPhone SDK,Android的Android SDK等,
詳細(xì)方法請(qǐng)見(jiàn):http://phonegap.com/start#android
優(yōu)點(diǎn):在Eclipse中加入SDK,編程自由,完美適應(yīng)不同設(shè)備屏幕大小,適合高手使用。
缺點(diǎn):沒(méi)有使用布局,直接加載網(wǎng)頁(yè),不能添加廣告。
三、使用Rexsee在線生成
Rexsee是開(kāi)源的Android開(kāi)發(fā)平臺(tái),支持開(kāi)發(fā)者以標(biāo)準(zhǔn)化Web開(kāi)發(fā)模式,使用HTML5、CSS3、Javascript快速實(shí)現(xiàn)移動(dòng)應(yīng)用。會(huì) HTML就會(huì)Android。你要做的只是將做好的HTML5 應(yīng)用上傳到Rexsee服務(wù)器,很快,會(huì)編譯成標(biāo)準(zhǔn)的APK安裝文件。
網(wǎng)站:http://www.rexsee.com
優(yōu)點(diǎn):一鍵生成,適學(xué)普通人使用
缺點(diǎn):直接封裝,無(wú)法添加廣告。
四、appMobi Html5 XDK 在線生成(使用了PhoneGap插件)
http://www.appmobi.com/
作者:靈雨飄零
出處:http://www.cnblogs.com/kingboy2008/
本文版權(quán)歸作者和博客園、CSDN共有,歡迎轉(zhuǎn)載,但未經(jīng)作者同意必須保留此段聲明,且在文章頁(yè)面明顯位置給出原文連接,否則保留追究法律責(zé)任的權(quán)利。該文章也同時(shí)發(fā)布在我的獨(dú)立博客中-博客園—靈雨飄零和CSDN—靈雨飄零。
【網(wǎng)站聲明】本站除付費(fèi)源碼經(jīng)過(guò)測(cè)試外,其他素材未做測(cè)試,不保證完整性,網(wǎng)站上部分源碼僅限學(xué)習(xí)交流,請(qǐng)勿用于商業(yè)用途。如損害你的權(quán)益請(qǐng)聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。