hybrid?是个啥?
相信大家再平常生活中也会经常见到这个词,比如现在比较火的 hybrid 汽车(混合动力汽车)
那如果是针对于 App 而言呢?
那就要从 App 的分类说起了
目前主流应用程序大体分为三类:Web App、Hybrid App、 Native App
首先,我们来看看究竟什么是 Web App、Hybrid App、 Native App:
Native App
传统的原生 App 开发模式,Android 基于 Java 语言,底层调用 Goolge 提供的 API,iOS 基于 Objective c 或 Swift,底层调用 Apple 官方提供的 API
优点:
直接依托于操作系统,交互性最强,性能最好
功能最为强大,特别是在与系统交互中,几乎所有功能都能实现
缺点
开发成本高,无法跨平台,不同平台 Android 和 iOS 上都要各自独立开发
门槛较高,原生人员有一定的入门门槛,相比广大的前端人员而言,较少
更新缓慢,特别是发布应用商店后,需要等到审核周期
维护成本高
Web App
即移动端的网站,将页面部署在服务器上,然后用户使用各大浏览器访问,不是独立 APP,无法安装和发布,类似于现在所说的轻应用
优点:
开发成本低,可以跨平台,调试方便
维护成本低
更新无需通知用户,不需要手动升级
无需安装 App,不会占用手机内存
缺点:
无法获取系统级别的通知,提醒,动效等等
用户留存率低
设计受限制诸多
体验较差
Hybrid App
(Hybrid)混合应用程序,在应用程序中嵌入了 webview,通过 webview 访问网页,嗯,那 webview 又是个啥?
webview 是一个基于 webkit 引擎,展现 Web 页面的控件
作用:
显示和渲染 Web 界面
直接使用 HTML 文件(网络或 Apk 资源包 assets 中)作布局
可和 JavaScript 交互调用
优点:
开发成本较低,可以跨平台,调试方便
维护成本低,功能可复用
功能更加完善,性能和体验要比起 Web app 好太多
更新较为自由
缺点:
相比原生,性能仍然有较大损耗
不适用于交互性较强的 app
tips
如何判断一个应用界面是 native 还是 Web 界面
- 在手机/模拟器中点击关于手机中的版本号 5 下,出来开发者选项
- 在开发者选项中勾选上显示布局边界再返回到 App 界面
- 如果 App 是 HTML 的界面,那界面不会有布局边界显示,如有则说明是 native 的界面
如下图:左边的 native 界面,右边是 HTML 的界面
欢迎来到testingpai.com!
注册 关于