真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

AndroidWebView的詳解及實例

Android WebView的詳解

創(chuàng)新互聯(lián)主營北碚網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,app軟件定制開發(fā),北碚h5微信小程序開發(fā)搭建,北碚網(wǎng)站營銷推廣歡迎北碚等地區(qū)企業(yè)咨詢

      Android WebView在android平臺上是一個特殊的View, 他能用來顯示網(wǎng)頁,這個類可以被用來在你的app中僅僅顯示一張在線的網(wǎng)頁,還可以用來開發(fā)瀏覽器。

    在Android手機中內(nèi)置了一款高性能webkit內(nèi)核瀏覽器,在SDK中封裝為一個叫做WebView組件。WebKit是Mac OS X v10.3及以上版本所包含的軟件框 架(對v10.2.7及以上版本也可通過軟件更新獲?。?。 同時,WebKit也是Mac OS X的Safari網(wǎng)頁瀏覽器的基礎(chǔ)。WebKit是一個開源項目,主要由KDE的KHTML修改而來并且包含了一些來自蘋果公司的一些組件。傳統(tǒng)上,WebKit包含一個網(wǎng)頁引擎WebCore和一個腳本引擎JavaScriptCore,它們分別對應(yīng)的是KDE的KHTML和KJS。不過, 隨著JavaScript引擎的獨立性越來越強,現(xiàn)在WebKit和WebCore已經(jīng)基本上混用不分(例如Google Chrome和Maxthon 3采用V8引擎,卻仍然宣稱自己是WebKit內(nèi)核)。 

    在開發(fā)過程中應(yīng)該注意幾點: 

    1.AndroidManifest.xml中必須使用許可"android.permission.INTERNET",否則會出Web page not available錯誤。

    2.如果訪問的頁面中有javascript,則webview必須設(shè)置支持Javascript。  

   webview.getSettings().setJavaScriptEnabled(true); 

    3.如果頁面中鏈接,如果希望點擊鏈接繼續(xù)在當(dāng)前browser中響應(yīng),而不是新開Android的系統(tǒng)browser中響應(yīng)該鏈接,必須覆蓋 webview的WebViewClient對象

webView.setWebViewClient(new WebViewClient() { 
  @Override 
  public boolean shouldOverrideUrlLoading(WebView view, String url) { 
    // TODO Auto-generated method stub 
    view.loadUrl(url); 
    return true; 
  } 
} 
); 

4.如果不做任何處理,瀏覽網(wǎng)頁,點擊系統(tǒng)“Back”鍵,整個Browser會調(diào)用finish()而結(jié)束自身,如果希望瀏覽的網(wǎng) 頁回退而不是推出瀏覽器,需要在當(dāng)前Activity中處理并消費掉該Back事件。

@Override 
  public boolean onKeyDown(int keyCode, KeyEvent event) { 
    // TODO Auto-generated method stub 
    if ((keyCode == KeyEvent.KEYCODE_BACK) && webView.canGoBack()) { 
      webView.goBack(); 
      return true; 
    } 
    return super.onKeyDown(keyCode, event); 
 
  } 

下一步讓我們來了解一下android中webview是如何支持javascript自定義對象的,在w3c標(biāo)準(zhǔn)中js有 window,history,document等標(biāo)準(zhǔn)對象,同樣我們可以在開發(fā)瀏覽器時自己定義我們的對象調(diào)用手機系統(tǒng)功能來處理,這樣使用js就可以 為所欲為了。

 
 
 
 
   
  WebView 
   
   
   
  點擊 
   
   

 可以看到,HTML代碼中的超鏈接響應(yīng)一個點擊事件,會執(zhí)行javascript中的click()方法,因為通過webView.addJavascriptInterface()方法新建了一個對象,并將此對象和javascript對象綁定了,javascript對象的引用即為"Android",所以在HTML中的click方法執(zhí)行時會調(diào)用新建的對象中的onClick()方法。這樣就實現(xiàn)了在javascript代碼中調(diào)用Java代碼.

 感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!


本文標(biāo)題:AndroidWebView的詳解及實例
轉(zhuǎn)載源于:http://weahome.cn/article/goicpi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部