PhoneGap/Cordova

 

H5具有跨平台的能力,而且包含了与App相关的大量新特性,随着移动浏览器不断增强,使用H5开发(write once)然后使用原生外壳打包成各个平台的App(run anywhere)就成为一种可能。PhoneGap就这样产生了,PhoneGap的目标是弥补手机与Web之间的间隙。

PhoneGap后被Adobe收购,但PhoneGap并没有获得广泛的应用,Adobe想通过PhoneGap赚钱就必须吸引更多的人加入到PhoneGap的阵营,而又必须保留营利的机会。于是AdobePhoneGap捐给Apache Software Foundation成为一个开源项目(吸引更多的人开发它<降低成本>和使用它<扩大影响力>),而又保留了PhoneGap的商标。

ASF接收PhoneGap的源代码后无法使用PhoneGap的名字,只能改名,于是产生了Cordova。Adobe则在Cordova的基础上继续使用PhoneGap的名字发展相关的开发工具,如桌面版工具(PhoneGap Desktop)、移动版运行App(PhoneGap App)、和能够营利的构建云服务(PhoneGap Build)。最终的结果是,Adobe把吃力的事(写底层代码Cordova)抛给了开源组织,自己则把精力放在赚钱上(研发基于Cordova的开发工具PhoneGap)。

现在核心代码在Cordova中,PhoneGap则是Adobe研发的一系列Cordova开发工具和云服务。

Cordova提供了很多插件,可以使js获得访问原生API的能力,如控制系统状态栏、获得电池信息、访问手机存储空间等;Cordova还提供了App构建工具,将Web App打包成各种平台上的原生App,以发布到应用市场中。值得一提的是Cordova中不存在Ajax跨域限制,因此可以像原生应用一样访问任何域名下的接口。

posted @ 2018-04-21 13:51  刘兵博客  阅读(183)  评论(0编辑  收藏  举报