混合应用定义
混合应用是指同时使用前端技术与原生技术开发的 App。通常由前端负责大部分界面开发和业务逻辑,原生负责封装原生功能供前端调用,二者以 WebView 作为媒介建立通信,从而既拥有 Web 开发的速度优势,又能拥有强大的原生能力。
前端开发者的角度
混合应用可以简单地理解为让前端页面跑在一个特殊的浏览器环境里,这个环境除了常规 Web API之外,还额外提供了很多可以直接调用手机原生能力的 API。
原生开发者的角度
混合应用其实就是一个原生开发的 App 外壳,这个外壳将原生功能封装成很多 API 并注入到 WebView 里,然后将前端页面打包进 App,App 启动时用 WebView 加载前端页面,剩下的就全交给前端了。
优点:混合开发方式可以在只投入一名前端开发者的情况下,快速开发出兼容多个平台的 App,相比原生开发同时降低了开发的时间成本和人力成本。
缺点:受限于 HTML5 的表现力,混合应用在 UI 层面很难达到原生界面的细腻程度;界面的载入速度也很容易受到手机运行速度和页面大小的影响。
适合项目的类型:功能导向的项目,例如企业内部 App、面向特定用户的工具类 App; 需要快速开发迭代的项目,例如新产品试水、外包项目; 缺少原生开发团队的企业。
参考链接:https://blog.csdn.net/valada/article/details/81639658
以上内容系学习大神链接的笔记。