2011年 phonegap/cordova(Nitobi)
- PhoneGap是由Nitobi推出的一个开源的HTML 5开发平台,可帮助开发者通过HTML、CSS和JavaScript开发本地移动应用。一次开发,然后部署到六大平台:iOS、Android、BlackBerry、webOS、bada和Symbian。2011年7月29日,PhoneGap刚刚发布了1.0版产品。 基于webview,性能差,兼容性差
2014年 5+Runtime(dcloud)
- HTML5 Plus移动App,简称5+App,是一种基于HTML、JS、CSS编写的运行于手机端的App,这种App可以通过扩展的JS API任意调用手机的原生能力,实现与原生App同样强大的功能和性能。 自定义webview,性能增强,兼容低端机型
2015 年 react native(facebook)
- 2015 年 5 月的 F8 Conference 上正式开源,将React 基础抽象组件渲染为原生平台UI组件,意味着每个视图和原生应用都别无二致。 流水的多平台,铁打的 React。绝大多数情况下,使用 React Native 的团队可以在多个平台间共享一份基础代码 抛弃webview,渲染为原生平台UI组件,解决性能差问题
2018 年 flutter(google)
- flutter 1.0(2018年12月4日)的 Flutter Live 2018 上,Google 宣布 Flutter 1.0 正式发布,Flutter 由 Google 的工程师团队打造,用于创建高性能、跨平台的移动应用。Flutter 针对当下以及未来的移动设备进行优化,专注于 Android and iOS 低延迟的输入和高帧率。 抛弃原生平台UI组件,自己实现UI渲染(Skia),性能方面略差于原生平台UI组件(解决性能差问题),但是跨平台的一致性更强(解决兼容性差问题),唯一不足是对web开发者不友好,需要额外的学习成本。
2020年 kraken/北海(阿里)
- Kraken 是一款基于 W3C 标准的高性能渲染引擎。Kraken 底层基于 Flutter 进行渲染,通过其自绘渲染的特性,保证多端一致性。上层基于 W3C 标准实现,拥有非常庞大的前端开发者生态。 开发者通过HTML、CSS和JavaScript开发跨平台移动应用(对web开发者友好),解决了性能问题和兼容性问题(底层采用flutter)