Apache Cordova
此条目需要更新。 (2021年12月13日) |
Apache Cordova,旧称PhoneGap是一款开放源代码的移动设备开发框架,旨在让开发者使用HTML、Javascript、CSS等Web APIs开发跨平台的移动设备应用程序[4]。原本由Nitobi公司开发,现在由Adobe Systems拥有[5][6]。
原作者 | 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年 |
当前版本 |
|
编程语言 | JavaScript、HTML5、CSS3、Java、C++、C♯、Objective-C |
操作系统 | iOS、Android、webOS、Symbian、BlackBerry、Ubuntu Touch、Windows Phone、Windows 8、Firefox OS |
语言 | 英语 |
类型 | 移动设备开发框架 |
许可协议 | Apache 2.0 License[2][3] |
网站 | www cordova |
发展历程
最早的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访问这些接口可以调用诸如摄影机、罗盘等硬件系统资源。配合上一些基于HTML5、CSS3技术的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、三星的Tizen和bada、Firefox 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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
加速器 | 是 | 是 | 是 | 是 | 是 | 不适用 | 是 | 是 | 是 | 是 | 是 | 是 | 是 |
照相机 | 是 | 是 | 是 | 是 | 是 | 不适用 | 是 | 是 | 是 | 是 | 是 | 是 | 是 |
指南针 | 不适用 | 是 | 是 | 是 | 是 | 不适用 | 不适用 | 是 | 不适用 | 是 | 是 | 是 | 是 |
通信簿 | 是 | 是 | 是 | 是 | 是 | 不适用 | 是 | 是 | 是 | 不适用 | 是 | 不适用 | 是 |
文件 | 是 | 是 | 是 | 是 | 是 | 不适用 | 是 | 不适用 | 不适用 | 不适用 | 是 | 是 | |
地理定位 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 |
多媒体 | 是 | 是 | 是 | 是 | 是 | 不适用 | 不适用 | 不适用 | 不适用 | 不适用 | 是 | 是 | |
网络 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 |
通知(警告、声音、震动) | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 |
存储 | 是 | 是 | 是 | 是 | 是 | 不适用 | 是 | 不适用 | 是 | 是 | 是 | 是 | 是 |
参见
注释
- ^ https://cordova.apache.org/news/2023/05/22/cordova-cli-12.0.0.html.
- ^ PhoneGap License. Phonegap.com. [2013-10-09]. (原始内容存档于2011-06-17).
- ^ FAQ | PhoneGap Build | Edge Tools & Services | Adobe & HTML. Html.adobe.com. [2013-10-09]. (原始内容存档于2012-09-28).
- ^ Easily create apps using the web technologies you know and love: HTML, CSS, and JavaScript. phonegap. [2013-05-30]. (原始内容存档于2013-05-23).
- ^ Adobe Announces Agreement to Acquire Nitobi, Creator of PhoneGap. Adobe.com. 2011-10-03 [2012-04-07]. (原始内容存档于2012-04-13).
- ^ Andre Charland's Answers on PhoneGap. Quora. [2012-04-07].
- ^ 7.0 7.1 http://www.eweek.com/c/a/Application-Development/PhoneGap-Simplifies-iPhone-Android-BlackBerry-Development-788189/
- ^ 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).
- ^ 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).
- ^ Klint Finley. "Adobe Launches Hosted PhoneGap Build Service For Creating Cross-Platform Mobile Apps" (页面存档备份,存于互联网档案馆). 2012.
- ^ Apache Cordova is a platform for building native mobile applications using HTML, CSS and JavaScript. [2013-05-30]. (原始内容存档于2013-06-06).
- ^ Create Mobile and Web Apps with HTML5 and JavaScript. ViziApps.com. [2012-04-07]. (原始内容存档于2012-03-31).
- ^ Mobile Application Platform and Tools. Worklight. 2012-01-16 [2012-04-07]. (原始内容存档于2012-04-19).
- ^ How PhoneGap plays an important part in our Enterprise offering « PhoneGap. Phonegap.com. 2011-06-27 [2012-04-07]. (原始内容存档于2012-04-15).
- ^ Open Source Mobile Enablement and Enterprise Mashups. Convertigo. [2012-04-07]. (原始内容存档于2012-04-12).
- ^ Convertigo Mobilizer Uses PhoneGap Build APIs « PhoneGap. Phonegap.com. 2011-07-07 [2012-04-07]. (原始内容存档于2012-05-13).
- ^ Create Mobile and Web Apps with HTML5 and JavaScript |. appMobi.com. [2012-04-07]. (原始内容存档于2012-04-13).
- ^ Sapan Diwakar. "Titanium vs Phonegap vs Native application development". [2013-05-30]. (原始内容存档于2013-06-24).
- ^ Andrew Trice. PhoneGap advice on dealing with Apple application rejections. Adobe System. 29 October 2012 [2013-05-30]. (原始内容存档于2013-05-18).
- ^ Greg Avola. Creating apps with PhoneGap: Lessons learned. Adobe System. 17 September 2012 [2013-05-30]. (原始内容存档于2013-05-18).
- ^ Using PhoneGap and the Sony Ericsson WebSDK to develop Android apps. Android and Me. [2012-04-07]. (原始内容存档于2012-03-31).
- ^ Building Cordova apps for Firefox OS ✩ Mozilla Hacks – the Web developer blog. 20 February 2014 [26 February 2014]. (原始内容存档于2014-03-04).
- ^ 存档副本. [2014-12-14]. (原始内容存档于2013-10-26).
- ^ PhoneGap supported features. Phonegap.com. [2013-10-09]. (原始内容存档于2011-06-22).
- ^ 存档副本. [2014-12-14]. (原始内容存档于2014-10-25).
外部链接
- Adobe PhoneGap官方网站(页面存档备份,存于互联网档案馆)(英文)