Apache Cordova

Apache Cordova,旧称PhoneGap是一款开放源代码的移动设备开发框架,旨在让开发者使用HTMLJavascriptCSS等Web APIs开发跨平台的移动设备应用程序[4]。原本由Nitobi公司开发,现在由Adobe Systems拥有[5][6]

Apache Cordova
(旧称PhoneGap)
原作者Joe Bowser、Michael Brooks、Rob Ellis、Dave Johnson、Anis Kadri、Brian Leroux、Jesse MacFadyen、Filip Maj、Eric Oesterle、Brock Whitten、Herman Wong、Shazron Abdullah
开发者Adobe Systems
首次发布2009年,​15年前​(2009
当前版本
  • 12.0.0(2023年5月22日;稳定版本)[1]
编辑维基数据链接
编程语言JavaScriptHTML5CSS3JavaC++C♯Objective-C
操作系统iOSAndroidwebOSSymbianBlackBerryUbuntu TouchWindows PhoneWindows 8Firefox OS
语言英语
类型移动设备开发框架
许可协议Apache 2.0 License[2][3]
网站www.phonegap.com
cordova.apache.org

发展历程

最早的PhoneGap起步于2009年在旧金山召开的iPhoneDevCamp大会[7],Nitobi的工程师Brock Whitten、Rob Ellis和Andre Charland在iOS系统内架设起Web接口和Objective-C之间的桥梁,让开发人员得以使用HTML5、JavaScript、CSS等web标准技术便捷开发原生程序,实现一次编译到处执行。其“桥接Web与iPhone SDK之间缝隙”的理念得到欢迎[7]

2011年10月4日,Adobe正式宣布收购Nitobi软件[8]。PhoneGap的代码贡献给了Apache软件基金会,但保留了PhoneGap的商标所有权,并命名为Apache Callback。1.4版发布后,接着Apache Callback的名称变更为Apache Cordova。Cordova是街道的名字,在开发团队附近。[9]Adobe Dreamweaver 5.5版本为phonegap提供开发环境。

早期版本的PhoneGap需要使用苹果电脑来开发iOS应用程序,而Windows Mobile应用程序则是使用Windows平台开发出来的。2012年9月之后,“ PhoneGap Build”服务推出,可以让程序员将他的源代码上传到“云编译器”,产生应用程序每一个所支持平台的安装包[10]

设计理念

PhoneGap是一个行动设备的API接口集,利用JavaScript访问这些接口可以调用诸如摄影机、罗盘等硬件系统资源。配合上一些基于HTML5CSS3技术的UI框架,如jQuery Mobile、Dojo Mobile或Sencha Touch,开发者得以快速地开发跨平台App而不需要编写任何的原生代码。[11]

注意到因为PhoneGap本身仍是一个原生程序,为App打包时依然需要用到这些系统平台的SDK。

PhoneGap Framework可以用多种移动应用程序平台开发,例如:ViziApps、[12] Worklight、[13][14]Convertigo[15][16]、Tiggr和appMobi[17] ,也可以选择PhoneGap Build编译工具。

由于使用Web技术,PhoneGap程序的加载和UI接口的反应都比原生的程序慢[18]Adobe警告开发者,由于使用PhoneGap框架开发的程序执行速度可能会太慢或使用体验不够“原生”,而被苹果应用商店拒绝上架[19][20]

支持平台

PhoneGap目前支持的操作系统包含苹果的iOS、Google的Android[21]Blackberry、LG的WebOS、微软的Windows Phone、Nokia的Symbian、三星的TizenbadaFirefox OS[22]Ubuntu Touch[23][24][25]

功能 iPhone /iPhone 3G iPhone 3GS and newer Android 1.0 – 4.2 Windows Phone BlackBerry 10 and PlayBook OS 4.6–4.7 5.0-6.0+ Bada Symbian webOS Tizen Ubuntu Touch Firefox OS
加速器 不适用
照相机 不适用
指南针 不适用 不适用 不适用 不适用
通信簿 不适用 不适用 不适用
文件 不适用 不适用 不适用 不适用
地理定位
多媒体 不适用 不适用 不适用 不适用 不适用
网络
通知(警告、声音、震动)
存储 不适用 不适用

参见

注释

  1. ^ https://cordova.apache.org/news/2023/05/22/cordova-cli-12.0.0.html.
  2. ^ PhoneGap License. Phonegap.com. [2013-10-09]. (原始内容存档于2011-06-17). 
  3. ^ FAQ | PhoneGap Build | Edge Tools & Services | Adobe & HTML. Html.adobe.com. [2013-10-09]. (原始内容存档于2012-09-28). 
  4. ^ Easily create apps using the web technologies you know and love: HTML, CSS, and JavaScript. phonegap. [2013-05-30]. (原始内容存档于2013-05-23). 
  5. ^ Adobe Announces Agreement to Acquire Nitobi, Creator of PhoneGap. Adobe.com. 2011-10-03 [2012-04-07]. (原始内容存档于2012-04-13). 
  6. ^ Andre Charland's Answers on PhoneGap. Quora. [2012-04-07]. 
  7. ^ 7.0 7.1 http://www.eweek.com/c/a/Application-Development/PhoneGap-Simplifies-iPhone-Android-BlackBerry-Development-788189/
  8. ^ Shankland, Stephen. Adobe buys PhoneGap, TypeKit for better Web tools | Deep Tech - CNET News. News.cnet.com. 2011-10-03 [2012-04-07]. (原始内容存档于2012-07-29). 
  9. ^ Apache Cordova gets a new look - The H Open Source: News and Features. H-online.com. 2012-02-22 [2012-04-07]. (原始内容存档于2013-12-07). 
  10. ^ Klint Finley. "Adobe Launches Hosted PhoneGap Build Service For Creating Cross-Platform Mobile Apps"页面存档备份,存于互联网档案馆). 2012.
  11. ^ Apache Cordova is a platform for building native mobile applications using HTML, CSS and JavaScript. [2013-05-30]. (原始内容存档于2013-06-06). 
  12. ^ Create Mobile and Web Apps with HTML5 and JavaScript. ViziApps.com. [2012-04-07]. (原始内容存档于2012-03-31). 
  13. ^ Mobile Application Platform and Tools. Worklight. 2012-01-16 [2012-04-07]. (原始内容存档于2012-04-19). 
  14. ^ How PhoneGap plays an important part in our Enterprise offering « PhoneGap. Phonegap.com. 2011-06-27 [2012-04-07]. (原始内容存档于2012-04-15). 
  15. ^ Open Source Mobile Enablement and Enterprise Mashups. Convertigo. [2012-04-07]. (原始内容存档于2012-04-12). 
  16. ^ Convertigo Mobilizer Uses PhoneGap Build APIs « PhoneGap. Phonegap.com. 2011-07-07 [2012-04-07]. (原始内容存档于2012-05-13). 
  17. ^ Create Mobile and Web Apps with HTML5 and JavaScript |. appMobi.com. [2012-04-07]. (原始内容存档于2012-04-13). 
  18. ^ Sapan Diwakar. "Titanium vs Phonegap vs Native application development". [2013-05-30]. (原始内容存档于2013-06-24). 
  19. ^ Andrew Trice. PhoneGap advice on dealing with Apple application rejections. Adobe System. 29 October 2012 [2013-05-30]. (原始内容存档于2013-05-18). 
  20. ^ Greg Avola. Creating apps with PhoneGap: Lessons learned. Adobe System. 17 September 2012 [2013-05-30]. (原始内容存档于2013-05-18). 
  21. ^ Using PhoneGap and the Sony Ericsson WebSDK to develop Android apps. Android and Me. [2012-04-07]. (原始内容存档于2012-03-31). 
  22. ^ Building Cordova apps for Firefox OS ✩ Mozilla Hacks – the Web developer blog. 20 February 2014 [26 February 2014]. (原始内容存档于2014-03-04). 
  23. ^ 存档副本. [2014-12-14]. (原始内容存档于2013-10-26). 
  24. ^ PhoneGap supported features. Phonegap.com. [2013-10-09]. (原始内容存档于2011-06-22). 
  25. ^ 存档副本. [2014-12-14]. (原始内容存档于2014-10-25). 

外部链接