客戶端相關知識學習(五)之什么是webView


webview是什么?作用是什么?和瀏覽器有什么關系?

Android系統中內置了一款高性能 webkit 內核瀏覽器,在 SDK 中封裝為一個叫做 WebView 組件也就是說WebView是一個基於webkit引擎、可以解析DOM 元素展現web頁面的控件,它和瀏覽器展示頁面的原理是相同的所以可以把它當做瀏覽

器看待

WebView是用於展示網絡請求后的結果,也就是將url網絡請求的結果展示在里面。

Android的Webview在低版本和高版本采用了不同的webkit版本內核,Android4.4后直接使用了Chrome。

webview主要用於什么地方?或者說什么需求下會使用到webview?

個人理解,電腦上展示html頁面,通過瀏覽器打開頁面即可瀏覽,而手機系統層面,如果沒有webview支持,是無法展示html頁面,所以webview的作用即用於手機系統來展示html界面的

所以它主要在需要在手機系統上加載html文件時被需要

WebView的作用

  • 顯示和渲染Web頁面;

  • 直接使用html文件(網絡上或本地assets中)作布局;

  • 可和JavaScript交互調用。

一個原生應用調用html頁面的過程?

  • 原生應用加載html頁面(加載頁面的方式可能有多種,比如加載本地寫好的html文件,或者放置在服務器的文件)

  • 加載完成,展示就是通過webview來渲染展示的,如果系統沒有webview,則是無法渲染展示html的

  • 1、2步其實一個原生應用調用html頁面過程已經完成了,那么頁面不光展示,有時候可能還需要交互,這里的話就需要寫一些方法了,比如html界面的按鈕需要調用系統原生的東西(比如:拍照,系統的文件,相冊之類的)。

     原生端就負責維護html調用的接口,然后按照需要返回(原生端充當一個server的角色,html充當一個client角色)

使用webview的好處?

原生APP是將頁面的布局設計,以及業務代碼打包然后用戶下載安裝使用,而webview是通過加載html文件來進行頁面的展示,當需要更新頁面布局的或者業務邏輯變更時,如果是原生的APP就需要修改前端內容,升級打包,重新發布才可

以使用最新的。而通過webview方式的頁面則只需要修改html代碼或者js文件(如果是從服務器端獲取,只要新的文件部署完成),用戶重新刷新就可以使用更新后的,無需通過下載安裝的方式完成升級

安卓系統內置瀏覽器,自帶瀏覽器?

內置瀏覽器和自帶瀏覽器是一個概念?

國內手機的自帶瀏覽器不是chrome,主要是版權的原因,自帶的瀏覽器都是手機廠商基於國內主流的幾大瀏覽器自己定制,然后發布在自己手機系統版本中.不過國內幾大瀏覽器廠商如QQ瀏覽器,UC瀏覽器、都是基於webkit引擎的

iphone的自帶瀏覽器是Safari,Safari瀏覽器的內核是webkit

APP webview展示的頁面和通過手機瀏覽器打開的頁面?

不管是ios還是安卓,自帶瀏覽器底層都是基於webkit的,然后各自系統中均帶有webview控件,也是基於webkit引擎,所以不管通過APP調用webview展示html頁面還是通過在瀏覽器打開html頁面,效果是一樣的。

Android中的webview函數 

WebView.loadUrl("http://www.ltplayer.com");// 加載url,也可以執行js函數

WebView.setWebViewClient(new SafeWebViewClient());// 設置 WebViewClient

WebView.setWebChromeClient(new SafeWebChromeClient());// 設置 WebChromeClient

WebView.onResume();

WebView.resumeTimers();

WebView.onPause();

WebView.pauseTimers();

WebView.stopLoading();// 停止當前加載

WebView.clearMatches();

WebView.canGoBack();

WebView.clearSslPreferences();

WebView.clearCache(true);方也會使用到。該方法接受一個參數,從命名即可看出作用。若設為false,則只清空內存里的資源緩存,而不清空磁盤里的。

WebView.loadUrl("about:blank");

WebView.removeAllViews();//

WebView.destroy();// 生命周期銷毀

參考 

WebView之基本使用

app中的webview通識篇(上)

webview的簡單介紹

app中的webview通識篇(上)

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM