混合开发-最全常用的混合开发App方式总结

一、Cordova

Apache Cordova是一个开源的移动开发框架。允许你用标准的web技术-HTML5,CSS3和JavaScript做跨平台开发。 应用在每个平台的具体执行被封装了起来,并依靠符合标准的API绑定去访问每个设备的功能,比如说:传感器、数据、网络状态等

优点:

  • 跨平台,开发简单,学习成本低
  • 框架多,插件多,可自定义插件
  • 发展最早,社区资源丰富

缺点:

  • WebView性能低下时,用户体验差,反应慢
  • 毕竟是老外的框架,中文文档资源少
  • 调试不方便,既不像原生那么好调试,也不像纯web那种调试
  • 只提供基础访问设备的接口,需要自己搭配其他UI框架和JavaScript框架来搭配

学习资料:
Cordova中文文档
创建第一个App
利用 Cordova+Famous 创建高性能跨平台APP
使用 Cordova 和 Vue.js 创建移动应用

二、lonic

ionic是一个轻量的手机UI库,具有速度快,界面现代化、美观等特点。为了解决其他一些UI库在手机上运行缓慢的问题,它直接放弃了IOS6和Android4.1以下的版本支持,来获取更好的使用体验

Ionic = Cordova + AngularJS + 一套样式库

优点:

  • 基于 Cordova
  • 漂亮的界面,追求性能,专注原生,免费开源
  • Angular JS MVVM 开发理念,数据双向绑定
  • 继承自 Cordova,可以使用 Cordova 的插件
  • 轻量级框架,专注原生,让你看不出混合应用和原生的区别

缺点:

  • Angular JS 学习路线陡峭
  • Ionic 框架相比于原生的 Cordova 有所差异,Cordova 某些官方插件可能不适用于Ionic

学习资料:
ionic 官方网站
ionic 官方文档
Github 地址

三、React Native(facebook开源的基于reactJs的RN)

优点:

  • 能够在Javascript和React的基础上获得完全一致的开发体验,构建世界一流的原生APP。
  • 仅需学习一次,编写任何平台。(Learn once, write anywhere)

缺点:

  • 初次学习成本高
  • 必须在不同平台下写两套代码,依赖暴露的接口

学习资料:
中文官方网站

四、阿里weex(阿里巴巴开源的基于Vue.js)

Weex是2016年6月由阿里巴巴推出的一个动态化的高扩展跨平台解决方案,支持iOS、安卓、YunOS及Web等多端开发部署。

优点:

  • Weex 的结构是解耦的,渲染引擎与语法层是分开的,也不依赖任何特定的前端框架
  • 目前主要支持 Vue.js 和 Rax 这两个前端框架。
  • 渲染 Weex 页面时和渲染原生页面一样。
  • 一套基础的内置组件
  • 不需要安装复杂的环境,运行环境简洁、调试工具也还好,容易做降级处理,特别适合开发单个页面

缺点:

  • 文档更新不及时,资料不多
  • 坑比较多,前端

学习资料:
Weex开发教程

五、谷歌 Flutter(Flutter是谷歌的移动UI框架, Dart 语言)

Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。 Flutter可以与现有的代码一起工作。

优点:

  • 快速开发,Flutter的热重载可帮助您快速地进行测试、构建UI、添加功能并更快地修复错误。在iOS和Android模拟器或真机上可以在亚秒内重载,并且不会丢失状态
  • UI界面比较漂亮,使用Flutter内置美丽的Material Design和Cupertino(iOS风格)widget、丰富的motion API、平滑而自然的滑动效果和平台感知,为您的用户带来全新体验。
  • 不会原生可以直接开发
  • 原生性能比较好

缺点:

  • 谷歌太喜欢砍产品了,不清楚 Flutter 是否能坚持到 1.0 发布的那天?
  • 仍然在技术验证开发阶段

学习资料:
学习资料
中文文档
技术社区

六、AppCan(移动云平台)

AppCan是基于HTML5技术的Hybird跨平台移动应用开发工具。开发者利用HTML5+CSS3+JavaScript技术,通过AppCan IDE集成开发系统、云端打包器等,快速开发出Android、iOS、WP平台上的移动应用。

有两种方式创建项目:IDE 和云端,并且IDE可以同步到云端。

免费用户有100M空间、50个应用的限制。

优点:

  • 支持四大主流系统:Android,IOS,Symbian,Windows Phone
  • 提供一体化解决方案,方便环境搭建、开发、调试、发布
  • 框架自带UI包,包含常用控件样式
  • 框架API丰富
  • 支持本地打包、云端打包
  • 基于密钥的代码加密
  • 技术支持相应及时
  • 框架对UI、动画渲染进行过优化,反应速度快

缺点:

  • 不开源,无法修改、优化底层代码
  • 分大众版和企业版,大众版免费,但功能有缺失,详细见附录
  • 暂不支持自行开发控件/,无法调取android原生功能
  • 框架自带功能过多,导致应用安装包偏大。
  • 文档偏少
  • 部分系统无法使用IDE进行调试
  • 只能在服务器端发布,无法在本地发布
  • IOS发布,需要将证书上传至服务器

学习资料:

Phonegap VS AppCan
官方网站

七、Dcould

混合开发-最全常用的混合开发App方式总结_第1张图片
[图片上传中...(58FD5D3E-CE3C-4EAD-8B4A-B6C745BB6A1D.png-ad0aa9-1543935014937-0)]
混合开发-最全常用的混合开发App方式总结_第2张图片
58FD5D3E-CE3C-4EAD-8B4A-B6C745BB6A1D.png

优点:

  • 国内厂商,中文文档
  • 对HTML5的性能、工具、能力都做了深入扩展,提供 IDE 、云服务等帮助节省时间
  • MUI 更贴近国内App使用习惯,提供模块的详细例子,如登录,个人中心

缺点:

  • 部分操作需要具备原生开发经验,如离线打包App=
  • 新产品仍然有bug,还需改进

学习资料:

中文官方网站

八、APICould

优点:

  • 不懂原生开发,不懂后台语言就可完成APP

缺点:

  • 更新速度快,版本不够稳定
  • 面向不懂App开发人群,不适合程序员和科技公司,过度依赖会降低技术水平
  • 涉嫌抄袭DCloud大量代码

学习资料:
APICould官方文档

你可能感兴趣的:(混合开发-最全常用的混合开发App方式总结)