在移動互聯網時代,移動應用程序成為越來越多人的生活必需品。為了讓應用程序更加便捷、快速地融入用戶的日常生活,很多企業選擇純webview的方式來構建應用程序。在本文中,我們將介紹純webview做app的原理以及詳細介紹。
1.什么是純webview做app?
純webview指的是一個應用程序只有一個webview控件,所有的頁面都是通過webview加載并展示的。也就是說,純webview應用程序只是一個容器,所有的業務邏輯都是由網頁實現的,與原始的網站沒有本質區別。
2.純webview做app的原理
從技術角度來講,純webview的應用程序由三個部分組成:首先是封裝網頁的容器,然后是業務代碼(網頁),最后是本地調用web API完成與native的交互。具體實現原理如下:
a. 封裝網頁的容器:純webview應用程序的容器層是基于WebView控件的,通過WebView控件來實現網頁的呈現。WebView是Android提供的一個控件,它具有渲染HTML頁面的功能,能夠加載并展示網頁,也可以用來加載Hybrid應用程序中的本地網頁。
b. 業務代碼(網頁):作為純webview中封裝網頁的容器,業務代碼(網頁)就是需要展示的頁面。所有功能的實現都是網頁前端開發人員完成的,包括用戶界面設計、前端邏輯處理等。
c. 本地調用web API:為了更好的融合native與webview控件,開發者可以通過本地應用程序調用WebView提供的JavaScript接口(JavaScript Bridge)來實現native與網頁的交互。
3.純webview做app的優缺點
優點:
a.開發成本低:純webview應用程序只需要實現一個簡單的容器就可以展示網頁,不需要像原生應用程序那樣需要開發者寫移動應用程序的常用功能,如多媒體功能、聯網功能等,因此可以大大減少開發成本。
b.跨平臺方便:純webview應用程序沒有任何與OS相關的底層代碼,只需要開發適應各種屏幕分辨率的網頁,并且支持主流的瀏覽器標準,因此可以在iOS平臺和Android平臺上無縫展示。
c.易于更新:由于所有的業務邏輯代碼都是運行在webview控件上,因此更新和發布等全都可以通過web服務器來實現,只需要提供新的版本并更新WEB服務器上的網頁就可以完成更新,不會像原生應用程序一樣需要重新提交應用程序到應用商店進行審核。
缺點:
a.性能問題:純webview應用程序的性能一般優于Hybrid應用程序,但比原生應用程序差。由于純webview應用程序的所有業務邏輯在網頁上實現,因此需要更多的時間來加載網頁資源以及處理交互邏輯,這會造成較大的等待時間。
b.與原生應用程序的體驗差距較大:由于純webview應用程序只是個簡單的容器,無法像原生應用程序一樣對應用程序做深度定制,導致體驗上與原生應用程序存在一定的缺陷差距。
4.純webview做app的應用場景
a.為了更快速的發布或者調整用戶體驗:純webview可以快速迭代,更快的發布bug,而且用戶可以很方便的根據反饋來進行調整和修改。
b.適合將網頁封裝成App,將html5和本地的native技術結合起來,更好地結合App與Web,實現APP內嵌Web。
c.那些功能不需要訪問系統資源的應用,如文章類應用、數據參照類應用等。
5.結論
我們可以看到,純webview應用程序的實現方法相對簡單,成本低,維護簡單,而且開發成本低,適合快速迭代和發布。但它的性能比較差,與原生應用程序的體驗也相差很大,因此選擇純webview應用程序的時候需要根據實際場景來做選擇。