在移动应用开发中,原生与非原生之争一直存在。可是,使用纯 WebView,我们可将网页技术应用于构建功能丰富的应用,打破原生与非原生的界限。通过 WebView,我们可使用 HTML5、CSS 和 JavaScript 等技术,实现丰富的交互体验和高效的用户界面。除此之外,Web 技术的可移植性和跨平台性也使得应用更容易推广到多个平台。总结下来,纯 WebView 是实现跨平台应用开发的有效工具。
在移动互联网时代,移动应用程序成为逐日增加人的生活必需品。为了让应用程序更加便捷、快速地融入用户的日常生活,很多企业选择纯webview的方法来构建应用程序。在本文中,我们将介绍纯webview做app的原理以及详细介绍。
1.什么是纯webview做app?
纯webview指的是一个应用程序只有一个webview控件,所有的页面都是通过webview加载并展示的。这么说来,纯webview应用程序只是一个容器,所有的业务逻辑都是由网页实现的,与原始的网站没有本质区别。
2.纯webview做app的原理
从技术角度来讲,纯webview的应用程序由三个部分组成首先是封装网页的容器,然后是业务代码(网页),最后是本地调用web API完成与native的交互。具体实现原理如下
a. 封装网页的容器纯webview应用程序的容器层是基于WebView控件的,通过WebView控件来实现网页的呈现。WebView是安卓提供的一个控件,它具有渲染HTML页面的功能,能够加载并展示网页,也可以用来加载Hybrid应用程序中的本地网页。
b. 业务代码(网页)作为纯webview中封装网页的容器,业务代码(网页)就是需要展示的页面。所有功能的实现都是网页前端开发人员完成的,包括用户界面设计、前端逻辑处理等。
c. 本地调用web API为了更好的融合native与webview控件,开发者可以借助本地应用程序调用WebView提供的JavaScript接口(JavaScript Bridge)来实现native与网页的交互。
3.纯webview做app的优缺点
优点
a.开发成本低纯webview应用程序只需如果要实现一个简单的容器就可以展示网页,不需要像原生应用程序那样需要开发者写移动应用程序的常用功能,如多媒体功能、联网功能等,因此可以大大减少开发成本。
b.跨平台方便纯webview应用程序没有任何与OS相关的底层代码,只需要开发适应各种屏幕分辨率的网页,并且支持主流的浏览器标准,因此可以在iOS平台和安卓平台上无缝展示。
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应用程序的时候需要根据实际场景来做选择。