Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android中Webkit的應用實例

Android中Webkit的應用實例

編輯:Android開發實例

       Webkit是一種開源的浏覽器引擎,蘋果Safari、Google的Chrome都是使用的Webkit內核。本文就通過實例的方式講解Android系統中Webkit的應用。

       根據Google上所說,你可以在你的應用程序中調用Webkit工具,從而浏覽一個www的頁面,這一點都不假,下面來看看,原理我就不說了。大家可以看看API。

       我給個簡單的上網例子給大家體驗下吧。我試驗過,可以成功的。

       下面直接貼代碼:

Java代碼
  1. package com.gggeye.android;     
  2.     
  3. import android.app.Activity;     
  4. import android.os.Bundle;     
  5. import android.os.Handler;     
  6. import android.os.Message;     
  7. import android.webkit.DownloadListener;     
  8. import android.webkit.WebView;     
  9.     
  10. public class WebViewDemo extends Activity {     
  11.     /** Called when the activity is first created. */     
  12.     @Override     
  13.     public void onCreate(Bundle icicle) {     
  14.         super.onCreate(icicle);     
  15.         setContentView(R.layout.main);     
  16.         webView1 = new WebView(this);     
  17.         webView1     
  18.                 .loadData(     
  19.                         "<html><body>Can I focus?<br /><a href=\"#\">No I cannot!</a>.</body></html>",     
  20.                         "text/html", "utf-8");     
  21.         this.setContentView(webView1);     
  22.         Logger.info("Download Faild _=> " + webView1.canGoBack());     
  23.         webView = new WebView(this);     
  24.         webView.loadUrl("http://www.3geye.net");     
  25.         //webView.setDownloadListener(new WebDownloadListener());     
  26.              
  27.         new Thread(new WebDownloadListener(this)).start();     
  28.     }     
  29.     WebView webView1;     
  30.     class WebDownloadListener implements Runnable, DownloadListener {     
  31.         WebViewDemo wd;     
  32.         WebDownloadListener(WebViewDemo wd){     
  33.             this.wd = wd;     
  34.         }     
  35.         public void run() {     
  36.             int j=0;     
  37.             StringBuffer sb = new StringBuffer();     
  38.             sb.append("正在連接網絡");     
  39.             while (true) {     
  40.                 try {     
  41.                     Thread.sleep(4 * 1000);     
  42.                     j++;     
  43.                     sb.append(".");     
  44.                     webView1 = new WebView(wd);     
  45.                     webView1.loadData("<html><body><font color=\"red\">"     
  46.                             + sb.toString() + " </font></html>", "text/html",     
  47.                             "utf-8");     
  48.                        Message msg = mHandler.obtainMessage();     
  49.                         mHandler.sendMessage(msg);     
  50.                          
  51.                 } catch (Throwable e) {     
  52.                     Logger.info(e.toString());     
  53.                          
  54.                     e.printStackTrace();     
  55.                 }     
  56.                 if (j== 3) {     
  57.                     webView1 = null;     
  58.                        Message msg = mHandler.obtainMessage();     
  59.                         mHandler.sendMessage(msg);     
  60.                     break;     
  61.                 }     
  62.             }     
  63.         }     
  64.         public void onDownloadFailed(String arg0, int arg1) {     
  65.             Logger.info("Download Faild _=> " + arg0);     
  66.         }     
  67.         public void onDownloadFinished(String arg0) {     
  68.             Logger.info("Download Finished => " + arg0);     
  69.             setContentView(webView);     
  70.         }     
  71.         public void onDownloadStart(String arg0, String arg1, long arg2,     
  72.                 Message arg3, Message arg4) {     
  73.             Logger.info("Download Faild _=> " + arg0);     
  74.     
  75.         }     
  76.     
  77.         public void onDownloadSuspended(String arg0, Message arg1) {     
  78.             Logger.info("Download Faild _=> " + arg0);     
  79.         }     
  80.     }     
  81.        Handler mHandler = new Handler(){     
  82.             @Override     
  83.             public void handleMessage(Message msg) {     
  84.                 super.handleMessage(msg);     
  85.                 //invalidate();     
  86.              if(webView1 == null)     
  87.                 setContentView(webView);     
  88.              else     
  89.                 setContentView(webView1);     
  90.                      
  91.             }     
  92.        };     
  93.     WebView webView = null;    

       至此Android Webkit的實例就介紹完了,大家通過此代碼能夠直觀的學習到Webkit應用的知識。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved