De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

Apache Cordova (anteriormente PhoneGap ) es un marco de desarrollo de aplicaciones móviles creado por Nitobi . Adobe Systems compró Nitobi en 2011, lo renombró como PhoneGap y luego lanzó una versión de código abierto del software llamada Apache Cordova. [7] Apache Cordova permite a los programadores de software crear aplicaciones web híbridas para dispositivos móviles utilizando CSS3 , HTML5 y JavaScript , en lugar de depender de API específicas de la plataforma como las de Android , iOS o Windows Phone.. [8] Permite agrupar el código CSS, HTML y JavaScript según la plataforma del dispositivo. Amplía las funciones de HTML y JavaScript para que funcionen con el dispositivo. Las aplicaciones resultantes son híbridas, lo que significa que no son aplicaciones móviles verdaderamente nativas ni están basadas puramente en la Web. No son nativos porque toda la representación del diseño se realiza a través de vistas web en lugar del marco de interfaz de usuario nativo de la plataforma. No son aplicaciones web porque están empaquetadas como aplicaciones para su distribución y tienen acceso a las API de dispositivos nativos. La combinación de fragmentos de código híbridos y nativos es posible desde la versión 1.9.

Anteriormente, el software se llamaba simplemente "PhoneGap", luego "Apache Callback". [9] [10] Como software de código abierto , Apache Cordova permite envoltorios a su alrededor, como Appery.io o Intel XDK .

PhoneGap era la versión comercial de Adobe de Cordova junto con su ecosistema asociado. Muchas otras herramientas y marcos también se construyen sobre Cordova, incluidos Ionic , [11] Monaca , VoltBuilder , TACO , Onsen UI, Visual Studio, GapDebug, App Builder, Cocoon, Framework7 , Quasar Framework , Evothings Studio, NSB / AppStudio, Mobiscroll, Intel XDK , [12] y Telerik Platform . [13] Estas herramientas utilizan Cordova y no PhoneGap para sus herramientas principales.

Los colaboradores del proyecto Apache Cordova incluyen Adobe , BlackBerry , Google , IBM , Intel , Microsoft , Mozilla y otros. [14]

Historia [ editar ]

Desarrollado por primera vez en un evento iPhoneDevCamp en San Francisco, [15] PhoneGap ganó el premio People's Choice Award en la Conferencia Web 2.0 de O'Reilly Media en 2009, [16] y el marco se ha utilizado para desarrollar muchas aplicaciones. [17] Apple Inc. ha confirmado que el marco tiene su aprobación, incluso con el cambio a la cláusula 3.3.1 del acuerdo de licencia de desarrollador 4.0 del SDK de Apple iPhone adoptado en 2010. [18] El marco PhoneGap es utilizado por varias plataformas de aplicaciones móviles como Monaca , [19] appMobi , [20] Convertigo, [21] [22] ViziApps , [23]y Worklight [24] [25] como la columna vertebral de su motor de desarrollo de clientes móviles.

Adobe anunció oficialmente la adquisición de Nitobi Software (el desarrollador original) el 4 de octubre de 2011. [26] Coincidiendo con eso, el código PhoneGap se contribuyó a la Apache Software Foundation para iniciar un nuevo proyecto llamado Apache Cordova. El nombre original del proyecto, Apache Callback, se consideró demasiado genérico. [27] Luego, también aparece en Adobe Systems como Adobe PhoneGap y también como Adobe PhoneGap Build . [28] El Blog de Phonegap muestra más detalles, por qué finalmente se eligió el nombre "Cordova". Dice: "Si bien las historias de génesis de PhoneGap a menudo varían según el cajero, la mayoría de los comprometidos pueden estar de acuerdo en que el proyecto nació en Nitobi, cuando la oficina estaba en Cordova Street en Vancouver".[29] [30]

Las primeras versiones de PhoneGap requerían una computadora Apple para crear aplicaciones iOS y una computadora Windows para crear aplicaciones Windows Mobile. Después de septiembre de 2012, el servicio PhoneGap Build de Adobe permite a los programadores cargar código fuente CSS , HTML y JavaScript en un " compilador en la nube " que genera aplicaciones para cada plataforma compatible. [31]

Diseño y justificación [ editar ]

El núcleo de una aplicación de Apache Cordova utiliza CSS3 y HTML5 para renderizar y JavaScript para lógica. HTML5 proporciona acceso al hardware subyacente, como el acelerómetro, la cámara y el GPS . Sin embargo, la compatibilidad de los navegadores con el acceso a dispositivos basados ​​en HTML5 no es coherente entre los navegadores móviles, en particular las versiones anteriores de Android. Para superar estas limitaciones, Apache Cordova incrusta el código HTML5 dentro de un WebView nativo en el dispositivo, utilizando una interfaz de función externa para acceder a los recursos nativos del mismo. [32]

Apache Cordova se puede ampliar con complementos nativos, lo que permite a los desarrolladores agregar más funcionalidades a las que se puede llamar desde JavaScript, lo que hace que se comunique directamente entre la capa nativa y la página HTML5. Estos complementos permiten el acceso al acelerómetro, la cámara, la brújula, el sistema de archivos, el micrófono y más del dispositivo.

Sin embargo, el uso de tecnologías basadas en Web hace que algunas aplicaciones de Apache Cordova se ejecuten más lentamente que las aplicaciones nativas con una funcionalidad similar. [33] Adobe Systems advierte que las aplicaciones creadas con Apache Cordova pueden ser rechazadas por Apple por ser demasiado lentas o no sentirse lo suficientemente "nativas" (tener apariencia y funcionalidad consistentes con lo que los usuarios esperan de la plataforma). [34] [35]

Plataformas compatibles [ editar ]

A partir de la versión 9, Apache Cordova actualmente admite el desarrollo para los sistemas operativos Apple iOS , Google Android , Windows 8.1 , Windows Phone 8.1 , Windows 10 y Electron (marco de software) (que a su vez se ejecuta en Windows , Linux y macOS ). Versión anterior de Apache Cordova utilizada para admitir Bada , BlackBerry , Firefox OS , [36] [37] LG webOS , Microsoft Windows Phone (7 y 8), Nokia Symbian OS, Tizen (SDK 2.x), and Ubuntu Touch. The table below is a list of supported features for each operating system for Adobe PhoneGap/ Apache Cordova 3.[38][39]

See also[edit]

  • List of rich web application frameworks
  • Multiple phone web-based application framework
  • Quasar Framework
  • RhoMobile Suite
  • Cocos2d
  • WinJS
  • NativeScript
  • Xamarin
  • Flutter
  • Appcelerator Titanium
  • VoltBuilder

References[edit]

  1. ^ "apache/cordova-cli". GitHub.
  2. ^ "cordova". npm.
  3. ^ "Cordova-CLI 9.0.0 Released". cordova.apache.org. Archived from the original on 2019-04-17. Retrieved 2019-04-17.
  4. ^ "Cordova support by platform - Apache Cordova". cordova.apache.org.
  5. ^ "PhoneGap License". Phonegap.com. Retrieved 2013-10-09.
  6. ^ "FAQ | PhoneGap Build | Edge Tools & Services | Adobe & HTML". Html.adobe.com. Retrieved 2013-10-09.
  7. ^ "Adobe Announces Agreement to Acquire Nitobi, Creator of PhoneGap". Adobe.com. 2011-10-03. Archived from the original on 2012-04-13. Retrieved 2012-04-07.
  8. ^ Jose Fermoso (April 5, 2009). "PhoneGap Seeks to Bridge the Gap Between Mobile App Platforms". GigaOM. Retrieved 2012-04-07.
  9. ^ Community, Tiki. "Apache Callback - Tiki Wiki CMS Groupware :: Development". Tiki Wiki CMS Groupware :: Development. Archived from the original on 4 April 2018. Retrieved 3 April 2018.
  10. ^ "Apache Callback Proposal". Wiki.phonegap.com. 2013-08-15. Retrieved 2013-10-09.
  11. ^ "The Last Word on Cordova and PhoneGap". The Official Ionic Blog.
  12. ^ "Intel XDK". Intel Developer Zone.
  13. ^ "Apache Cordova". Apache Cordova.
  14. ^ "Cordova Contributor's Who's Who". apache.org. 2015-11-02. Archived from the original on 2015-07-16. Retrieved 2015-11-02.
  15. ^ Darryl K. Taft (2009-03-13). "PhoneGap Simplifies iPhone, Android, BlackBerry Development". Eweek.com. Retrieved 2013-10-09.
  16. ^ Davis, Lidija (2009-04-02). "PhoneGap: People's Choice Winner at Web 2.0 Expo Launch Pad". Readwriteweb.com. Retrieved 2012-04-07.
  17. ^ "PhoneGap Apps". Phonegap.com. Retrieved 2012-12-06.
  18. ^ "PhoneGap and the Apple developer license agreement. « PhoneGap". Phonegap.com. 2010-04-14. Archived from the original on 2012-04-15. Retrieved 2012-04-07.
  19. ^ "Develop Awesome PhoneGap Apps with Awesome Tools". monaco.mobi. Archived from the original on 2014-06-20. Retrieved 2014-06-10.
  20. ^ "Create Mobile and Web Apps with HTML5 and JavaScript |". appMobi.com. Retrieved 2012-04-07.
  21. ^ "Open Source Mobile Enablement and Enterprise Mashups". Convertigo. Retrieved 2012-04-07.
  22. ^ "Convertigo Mobilizer Uses PhoneGap Build APIs « PhoneGap". Phonegap.com. 2011-07-07. Archived from the original on 2012-05-13. Retrieved 2012-04-07.
  23. ^ "Create Mobile and Web Apps with HTML5 and JavaScript". ViziApps.com. Retrieved 2012-04-07.
  24. ^ "Mobile Application Platform and Tools". Worklight. 2012-01-16. Archived from the original on 2012-04-19. Retrieved 2012-04-07.
  25. ^ "How PhoneGap plays an important part in our Enterprise offering PhoneGap". Phonegap.com. 2011-06-27. Archived from the original on 2012-04-15. Retrieved 2012-04-07.
  26. ^ Shankland, Stephen (2011-10-03). "Adobe buys PhoneGap, TypeKit for better Web tools | Deep Tech - CNET News". News.cnet.com. Retrieved 2012-04-07.
  27. ^ "finding a new name that isn't PhoneGap - Brian LeRoux - org.apache.incubator.callback-dev". MarkMail. 2011-10-28. Retrieved 2012-04-07.
  28. ^ "Adobe PhoneGap Build". Adobe Systems Inc.
  29. ^ Team, PhoneGap (2017-02-16). "PhoneGap, Cordova, and what's in a name?". Medium. Retrieved 2019-11-10.
  30. ^ "Nitobi in Vancouver, BC". www.fyple.ca. Retrieved 2019-11-10.
  31. ^ Klint Finley. "Adobe Launches Hosted PhoneGap Build Service For Creating Cross-Platform Mobile Apps". 2012.
  32. ^ "The Development of Mobile Applications using HTML5 and PhoneGap on Intel Architecture-Based Platforms". 2012-06-22. Retrieved 2013-02-17. However, HTML5 has some limitations. Most prominent is the lack of API to access device hardware and sensors such as accelerometer, compass, GPS, etc. While native applications can access device hardware, they lack the portability that Web apps provide. Thus, a solution is to code a hybrid application, which cumulatively uses the benefits of native and Web apps.
  33. ^ Sapan Diwakar (2012-06-21). "Titanium vs Phonegap vs Native application development". Retrieved 2013-02-17.
  34. ^ "PhoneGap advice on dealing with Apple application rejections". Adobe Systems. 2012-10-29. Retrieved 2013-02-17.
  35. ^ "Creating apps with PhoneGap: Lessons learned". Adobe Systems. 2012-09-17. Archived from the original on 2013-05-18. Retrieved 2013-02-17. When you add more complex CSS3 elements, heavy transitions, and supporting multiple devices (such as iOS and Android), however, it makes you realize that there are few steps you must iron out to prevent hair loss
  36. ^ "Building Cordova apps for Firefox OS ✩ Mozilla Hacks – the Web developer blog". 20 February 2014. Retrieved 26 February 2014.
  37. ^ "Using PhoneGap and the Sony Ericsson WebSDK to develop Android apps". Android and Me. Retrieved 2012-04-07.
  38. ^ "Platform Support". Adobe PhoneGap. Retrieved 2016-02-23.
  39. ^ "PhoneGap supported features". Phonegap.com. Retrieved 2013-10-09.
  40. ^ "Android Platform Guide - Apache Cordova". cordova.apache.org. Retrieved 3 April 2018.

Bibliography[edit]

  • Pelletier, Jeff (April 25, 2013). Mobile App Manual: The Blueprint (1st ed.). Withinsight Publishing. p. 96. ISBN 978-0989072106.
  • Shotts, Kerri (February 26, 2013). PhoneGap 2.x Mobile Application Development Hotshot (1st ed.). Packt Publishing. p. 388. ISBN 978-1849519403.
  • Gifford, Matt (October 22, 2012). PhoneGap Mobile Application Development Cookbook (1st ed.). Packt Publishing. p. 320. ISBN 978-1849518581.
  • M. Wargo, John (June 11, 2012). PhoneGap Essentials: Building Cross-Platform Mobile Apps (1st ed.). Addison-Wesley Professional. p. 384. ISBN 978-0321814296. Archived from the original on April 3, 2015. Retrieved June 29, 2012.
  • Munro, Jamie (March 29, 2012). 20 Recipes for Programming PhoneGap: Cross-Platform Mobile Development for Android and iPhone (1st ed.). O'Reilly Media. p. 76. ISBN 978-1-4493-1954-0.
  • Marinacci, Joshua (March 21, 2012). Building Mobile Applications with Java: Using the Google Web Toolkit and PhoneGap (1st ed.). O'Reilly Media. p. 86. ISBN 978-1-4493-0823-0.
  • Lunny, Andrew (September 23, 2011). PhoneGap Beginner's Guide (1st ed.). Packt Publishing. p. 328. ISBN 978-1-84951-536-8.
  • Ghatol, Rohit (November 14, 2011). Beginning PhoneGap: Mobile Web Framework for JavaScript and HTML5 (1st ed.). Apress. p. 700. ISBN 978-1-4302-3903-1.
  • Myer, Thomas (December 13, 2011). Beginning PhoneGap (1st ed.). Wrox. p. 336. ISBN 978-1-118-15665-0. Archived from the original on June 4, 2015. Retrieved October 10, 2011.

External links[edit]

  • Official website