Apache Cordova

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]
編輯維基數據鏈接
编程语言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.phonegap.com
cordova.apache.org

Apache Cordova,舊稱PhoneGap是一款開放原始碼的行動裝置開發框架,旨在讓開發者使用HTMLJavascriptCSS等Web APIs開發跨平臺的行動裝置應用程式[4]。原本由Nitobi公司開發,現在由Adobe Systems擁有[5][6]

發展歷程

最早的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). 

外部链接

軟件
套件
桌面
伺服器
  • Adobe LiveCycle英语LiveCycle
  • Adobe Flash Media Server英语Flash Media Server
  • BlazeDS英语BlazeDS
  • ColdFusion
  • Adobe JRun英语JRun
  • Apache Cordova
技術
网络服務
  • Acrobat.com英语Acrobat.com
  • Adobe Solutions Network英语Adobe Solutions Network
  • Adobe Photoshop Express
  • Adobe Premiere Express英语Adobe Premiere Express
  • Adobe Spark英语Adobe Spark
  • Adobe Stock
收購
人物
  • 分类 分類
  • 共享资源页面 共享資源
顶级项目
  • Abdera英语Apache Abdera
  • Accumulo英语Apache Accumulo
  • ActiveMQ
  • Ambari英语Apache Ambari
  • Ant
  • Aries英语Apache Aries
  • Apache Arrow
  • Apache HTTP Server
  • APR
  • Avro
  • Axis
  • Axis2
  • Beam
  • Bloodhound英语Apache Bloodhound
  • Apache Brooklyn英语Apache Brooklyn
  • Buildr英语Apache Buildr
  • Calcite英语Apache Calcite
  • Camel
  • Cassandra
  • Cayenne英语Apache Cayenne
  • Chemistry英语Apache Chemistry
  • CloudStack英语Apache CloudStack
  • Cocoon英语Apache Cocoon
  • Continuum英语Apache Continuum
  • Cordova
  • CouchDB
  • cTAKES英语cTAKES
  • CXF
  • Deltacloud英语Deltacloud
  • Derby
  • Directory英语Apache Directory Server
  • Drill英语Apache Drill
  • Empire-db英语Apache Empire-db
  • ECharts
  • Felix英语Apache Felix
  • Flex
  • Flink
  • Flume英语Apache Flume
  • Forrest英语Apache Forrest
  • Geronimo英语Apache Geronimo
  • Gora英语Apache Gora
  • Gump英语Apache Gump
  • Hadoop
  • Hama英语Apache Hama
  • HBase
  • Hive
  • Jackrabbit英语Apache Jackrabbit
  • James英语Apache James
  • JMeter英语Apache JMeter
  • Kafka
  • Karaf英语Apache Karaf
  • Kylin英语Apache Kylin
  • Lucene
  • Lenya英语Apache Lenya
  • Mahout英语Apache Mahout
  • Marmotta英语Apache Marmotta
  • Maven
  • MINA英语Apache MINA
  • mod_perl英语mod_perl
  • MyFaces英语Apache MyFaces
  • Nutch英语Apache Nutch
  • ODE英语Apache ODE
  • OFBiz英语Apache OFBiz
  • Oozie英语Oozie
  • OpenEJB英语Apache OpenEJB
  • OpenJPA英语Apache OpenJPA
  • OpenNLP
  • OpenOffice
  • PDFBox英语Apache PDFBox
  • Phoenix英语Apache Phoenix
  • POI
  • Pig英语Pig (programming tool)
  • Pivot英语Apache Pivot
  • Qpid英语Apache Qpid
  • River英语Apache River
  • Roller英语Apache Roller
  • RocketMQ
  • Samza英语Apache Samza
  • ServiceMix英语Apache ServiceMix
  • Shindig英语Apache Shindig
  • Shiro
  • Sling英语Apache Sling
  • Spark
  • Stanbol英语Apache Stanbol
  • Storm
  • SpamAssassin
  • Sqoop
  • Apache C++标准库英语stdcxx
  • Struts
  • Struts 2
  • Subversion
  • Tapestry
  • Thrift
  • Tiles英语Apache Tiles
  • Tika英语Apache Tika
  • Tomcat
  • Trafficserver
  • Turbine
  • Tuscany
  • UIMA
  • Velocity
  • Wave
  • Wicket
  • Wink英语Apache Wink
  • Xalan英语Xalan
  • Xerces英语Xerces
  • XMLBeans英语XMLBeans
  • ZooKeeper
ASF logo
Commons项目
  • Apache Commons Logging英语Apache Commons Logging
  • BCEL英语Byte Code Engineering Library
  • BSF英语Bean Scripting Framework
  • Commons Daemon英语Commons Daemon
  • Jelly英语Apache Jelly
Lucene项目
  • Lucene Java
  • Lucene.Net英语Lucene.Net
  • Nutch英语Nutch
  • Solr
Hadoop项目
其他项目
  • Batik
  • Chainsaw英语Chainsaw (log file viewer)
  • FOP
  • Log4j
  • XAP英语Apache XAP
  • Log4Net
  • Ivy英语Apache Ivy
孵化器项目
  • XAP英语Apache XAP
  • Samza英语Apache Samza
  • Storm
Apache Attic
  • AxKit英语AxKit
  • Beehive英语Apache Beehive
  • Click英语Apache Click
  • Apache BlueSky英语BlueSky Open Platform
  • Cactus英语Jakarta Cactus
  • Jakarta
  • Excalibur英语Apache Excalibur
  • Harmony
  • HiveMind英语Apache HiveMind
  • Lenya英语Apache Lenya
  • Slide英语Jakarta Slide
  • Shale英语Apache Shale
  • Shindig英语Apache Shindig
  • stdcxx英语Apache C++ Standard Library
  • iBATIS
  • XMLBeans英语XMLBeans
许可证标准
  • 分类 分类
  • 共享资源页面 维基共享