来源:http://www./info-detail-1129829.html 现在Hybrid app是一中非常火热的开发模式,在国内对应的开发工具也乱象丛生,有WeX5、crossApp、ExMobi、Appcan、apicloud、HBuilder等。 其中WeX5只是在PhoneGap外面套了一层壳子,内部的UI都是通过大量的css,js实现的,页面切换也大量采用webapp模式,类似于JQuery Mobile中的框架,太过偏向于webapp,性能得不到较好的体验,而且缺少第三方功能SDK封装支持。 crossapp是一款实用C++开发跨平台应用的工具,因为Android与IOS应用程序本身就是能够用C++来开发的,所以这也算是一种类原生方式开发,但是C++开发Android应用程序或者开发IOS应用程序很少见,会的人不多,缺少交流平台,自己开发插件比较困难,只能完全依赖官方提供,官方的第三方插件库资源不足,很难满足开发者变态的需求。 ExMobi是烽火科技研发的一种内部使用的开发平台,当然也可以购买使用权,虽然也有免费版,但是在免费版连推送功能都不开放的情况下你还会选择吗?大量的功能需要购买不同的版本才会提供,对于小型开发团队来说不切实际。 Appcan是国内最早一批研发Hybrid app开发模式中的一员,其存在时间之久,属目前国内Hybrid app开发平台之最,为什么它能够一直坚持下去?那肯定是有其优点所在。Appcan基于多webview来开发单Activity模式app,最近去除了ActivityGroup,采用Fragment来代替,优化了性能及体验,同时其合作商家广泛,第三方SDK应有尽有,能够很好地满足开发者的变态需求。 apicloud的一种从Appcan脱离出来的技术,虽说其开发人员有很多是Appcan原来的技术人员,但是这是两种不同的设计方式,它也有大量的第三方SDK支持,并且其UI是令人看着比较舒服的(个人觉得)。 HBuilder的webview处理方式与apicloud基本类似,其实这种用webview装载网页的技术都大同小异,网上也能找到,只是在于细节点处理方面不同而已。 Appcan&apicloud&HBuiler
跨平台APP----对Cordova,APPCan,DCloud,APICloud四大平台的分析来源:http://blog.csdn.net/tangzenglei/article/details/50668914 前言:移动开发是未来一个很重要的IT领域,而跨平台开发将是这一领域最重要的事情。 ----谷震平
一 兵器谱在国外,最大的是Cordova(PhoneGap,2011年广泛流行),在2012年12月开源。 在国内,按时间顺序,有:
二 CordovaCordova是Apache软件基金会的一个产品。其前身是PhoneGap,由Nitobi开发,2011年10月,Adobe收够了Nitobi,并且PhoneGap项目也被贡献给Apache软件基金会。Apache在2012年12月,发布了Cordova,截止到2015年12月,最新版面是3.0。 该框架的目标用户群体是原生开发者,其设计初衷是希望用户群体能够通过跨平台开发的方法降低原生开发的成本。为此,开发人员需要安装原生开发环境,配置工程,使用HTML5、CSS3、js和原生SDK生成应用。 Cordova的优势很明显,可以使用的框架、原生接口、支持平台都很多。但是,外国人写的东西,公司使用后,出现的技术问题难以解决。同时,其在使用jQuery Mobile、Sencha Touch等前端框架的时候,有特效启动慢、页面切换慢、数据请求慢的特点。
三 APPCan
AppCan成立于2010年,2011年推出产品并测试,2012年正式推出品牌,2013年商业模式成型,2014年开发者注册约70w。AppCan不是开源平台,同时,企业版和部分插件是收费的。换句话说,AppCan只是一个卖软件的商业公司。我们认为:这会对其市场的占有率有着直接影响,闭源而没有垄断,所以前景不会太好。
四 DCloudDCloud大部分产品开源,W3C会员单位,html5中国产业联盟的发起公司之一,在Html5这个行业有一定的江湖地位。旗下四款产品:HBuilder、5+ Runtime、MUI、流应用都是弥补并扩展HTML5特性的产品。该公司的理念就是解决HTML5的性能、工具、能力三方面的问题。MUI是一款不错的前端框架,性能比 jquery Mobile、Bootstrap好很多,主要区别:
但是,DCloud毕竟是个新平台,发展才2年,新产品内部存在的Bug还需要很多的测试。在其官方社区中,不少开发者也在呼吁DCloud尽快完善文档和框架。
五 APICloud
APICloud提供原生应用的功能模块(设备访问,界面布局,开放SDK等),开发者可以通过JS调用。前端工程师负责页面布局,UI展现,及简单的交互,原生模块负责性能方面和功能实现,两者结合形成一个完整的应用。同时APICloud提供了云数据库的功能,前端不必了解PHP,Node.js等后端语言,通过JS接口或Restful API实现数据库的增删改查。 但是APICloud的更新速度很快,版本不太稳定。而且,它是为不懂APP开发的人士准备的,不适合科技公司和程序员。
六 兵器谱PK
由上表可知,4个平台的定位是不同的,导致其产品的功能特性不一样。
七 优缺点对比 |
|