⼏款移动跨平台App开发框架⽐较
整理⽬前流⾏的跨平台WebApp开发技术的特点,仅供参考。
每个框架⼏乎都包含以下特性:
使⽤ HTML5 + CSS + JavaScript 开发
跨平台重⽤代码
丰富的UI库
提供访问设备原⽣API的 JavaScript API 包装器
解决原⽣开发中机型适配的难题
提供打包、部署的⼯具或服务
都需要学习⾃⾝封装的 JavaScript API
筛选框架的要求:
性能:运⾏速度快
UI:提供接近原⽣的UI体验
插件多,⽂档丰富,开发效率⾼,容易扩展和维护
满⾜业务需求
Cordova
Cordova 和 PhoneGap 的区别?
PhoneGap 是 Apache Cordova 的⼀个分发版,就像 Ubuntu 是基于 Linux 的⼀个发⾏版,其代码库也基于 Cordova,只是PhoneGap 关联了 Adobe 的⼀些额外的商业⼯具或服务,例如 PhoneGap Build 和 Adobe Shadow,来帮助开发者简化开发。
此外,两者提供的CLI⼯具、项⽬结构有差异,如:
Cordova 把 config.html 放在项⽬⽬录下,⽽ PhoneGap 把它放在www ⽬录下。
优点:
开源免费,社区⽣态成熟,插件丰富
⽀持离线场景应⽤
开发⼯具选择空间⼤
缺点:
只提供基础访问设备的接⼝,需要⾃⼰搭配其他UI框架和JavaScript框架来搭配
UI框架
|
Famous
为任意屏幕创建流畅、复杂的UI。
免费和开源的JavaScript渲染引擎。着名引擎的独特之处在于其JavaScript渲染引擎和3D物理引擎。
| |
参考资料
Ionic
技术要求
HTML + CSS + AngularJS
优点:
基于 Cordova
漂亮的界⾯,追求性能,专注原⽣,免费开源
Angular JS MVVM 开发理念,数据双向绑定
继承⾃ Cordova,可以使⽤ Cordova 的插件
缺点:
Angular JS 学习路线陡峭
Ionic 框架相⽐于原⽣的 Cordova 有所差异,Cordova 某些官⽅插件可能不适⽤于Ionic
AppCan
通过AppCan IDE集成开发系统、云端打包器等,快速开发出Android、iOS、WP平台上的移动应⽤。
有两种⽅式创建项⽬:IDE 和云端,并且IDE可以同步到云端。
免费⽤户有100M空间、50个应⽤的限制。
优点
提供⼀体化解决⽅案,⽅便环境搭建、开发、调试、发布
框架⾃带UI包,包含常⽤控件样式
框架对UI、动画渲染进⾏过优化,反应速度快
reactnativeui框架⽀持本地打包、云端打包
基于密钥的代码加密
缺点
不开源,⽆法修改、优化底层代码
分⼤众版和企业版,⼤众版免费,但功能有缺失,详细见附录
暂不⽀持⾃⾏开发控件/,⽆法调取android原⽣功能
框架⾃带功能过多,导致应⽤安装包偏⼤。
⽂档偏少
部分系统⽆法使⽤IDE进⾏调试
只能在服务器端发布,⽆法在本地发布
IOS发布,需要将证书上传⾄服务器
参考:
使⽤案例:
我爱我家App 等
附录:
企业版和⼤众版主要有以下⼏点区别:
开发环境:
企业版⾛独⽴的开发环境与打包环境,企业版配备macmini打包服务器,可以实现本地环境下创建项⽬,调试,打包;
⼤众版不管是创建项⽬还是打包都需要依托于官⽅的服务器,需要在联⽹的情况下进⾏,打包需要将源码上传到官⽅服务器进⾏打包;
版本控制:企业版独⽴控制引擎插件的版本;
⼤众版官⽅统⼀维护,官⽅换哪个版本开发者就需要使⽤哪个版本,没有选择;
协同开发:企业版可通过macmini后台分配开发者或者应⽤管理员帐号,可实现协同开发。
⼤众版不能满⾜协同开发
企业版有推送API接⼝
⼤众版没有
售后服务:企业版有独⽴的售后团队
⼤众版的⼊⼝是论坛
Dcloud
特点:
云编译必须联⽹获取AppId
优点:
国内⼚商,中⽂⽂档
对HTML5的性能、⼯具、能⼒都做了深⼊扩展,提供 IDE 、云服务等帮助节省时间
MUI 更贴近国内App使⽤习惯,提供模块的详细例⼦,如登录,个⼈中⼼
缺点:
部分操作需要具备原⽣开发经验,如离线打包App
新产品仍然有bug,还需改进
学习路线:
APICloud
优点:
不懂原⽣开发,不懂后台语⾔就可完成APP
缺点:
更新速度快,版本不够稳定
⾯向不懂App开发⼈,不适合程序员和科技公司,过度依赖会降低技术⽔平
涉嫌抄袭DCloud⼤量代码
React Native
能够在Javascript和React的基础上获得完全⼀致的开发体验,构建世界⼀流的原⽣APP。仅需学习⼀次,编写任何平台。(Learn once, write anywhere)
缺点:
初次学习成本⾼
必须在不同平台下写两套代码,依赖暴露的接⼝
总结
经过⼀番对⽐,感觉 Cordova 和 DCloud 更适合本次项⽬。
原因:
Cordova
⽣态成熟,有更多可搭配⼯具使⽤,开源代码可⾃由定制;
前端框架: famous 或 Framework7
DCloud
国产中的开源,免费,性能不错
提供云服务帮助打包和部署、测试,降低⼀部分门槛,减少时间;
前端框架:MUI
其他框架不适合的原因:
APICloud
⽣态不好,名声不好,⾯向体不适合;
AppCan
闭源,商业化产品,免费版限制太多;
Ionic
AngularJS 学习曲线陡峭,需要时间;
React Native
学习成本⾼
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论