Skip to content
Christian Gastrell edited this page Apr 21, 2015 · 3 revisions

Phonegap

Que es?

PhoneGap es un framework gratuito y open source que permite crear aplicaciones moviles multiplataforma a partir de tecnologías web como HTML5, CSS3 y Javascript

Tecnologias web

Tecnologias web refiere a las tecnologias utilizadas para la programacion de aplicaciones web a traves de los navegadores. La parte visible de estas se desarrolla en HTML5, Javascript y CSS.

Hacemos la salvedad de "parte visible" ya que cada una de estas aplicaciones se ejecuta en el navegador convirtiendo a este en, efectivamente, su "frontend" o interfaz. Las aplicaciones en si se mantienen y ejecutan su funcionalidad en servidores, pero dado el avance de la conectividad y las velocidades de transmision y procesamiento es cada vez mas comun generar aplicaciones que descargan su mayor tarea en los navegadores, dejando en el "backend" (servidor) solo la funcionalidad de modificar datos y estados.

Phonegap utiliza estas mismas tecnologias, allanando la curva de aprendizaje para poder empezar a programar para el mercado mobile.

Como nace Phonegap

Phonegap es desarrollado por la empresa Nitobi. En 2011 Adobe compra Nitobi al mismo tiempo que Nitobi contribuye el codigo de Phonegap a la Apache Software Foundation para un nuevo proyecto llamado Apache Cordova (ex Apache Callback).

Como funciona

Phonegap genera una estructura en la cual podemos desarrollar una pagina en HTML5, Javascript y CSS que luego usara dentro de una aplicacion predefinida. Esta aplicacion embebera el codigo HTML en un componente del sistema operativo: UIWebView (iOS) y WebView (Android). Como suele suceder en estos casos, el componente tiene, por seguridad, muchas restricciones de acceso al sistema operativo y hardware del dispositivo.

http://agiliq.com/blog/2012/09/dissecting-phonegaps-architecture/

Para contrarrestar estas limitaciones, Phonegap ofrece un sistema modular que permite el registro de plugins. Este sistema modular es llamado bridge (puente) y se encarga de generar una interfaz entre el codigo Javascript corriendo en el componente web y las llamadas a funcionalidades nativas del sistema operativo.

Arquitectura de phonegap apps

Plugins

Los plugins de Phonegap son los mismos que para el proyecto Apache Cordova, sin embargo, Phonegap solo cuenta como core plugins aquellos que han sido curados y mantenidos de manera tal que soportan la mayoria de las plataformas (dando enfasis a la idea multiplataforma del framework).

Core plugins

cordova-plugin-battery-status plugman --platform --project --plugin org.apache.cordova.battery-status

cordova-plugin-camera plugman --platform --project --plugin org.apache.cordova.camera

cordova-plugin-console plugman --platform --project --plugin org.apache.cordova.console

cordova-plugin-contacts plugman --platform --project --plugin org.apache.cordova.contacts

cordova-plugin-device plugman --platform --project --plugin org.apache.cordova.device

cordova-plugin-device-motion (accelerometer) plugman --platform --project --plugin org.apache.cordova.device-motion

cordova-plugin-device-orientation (compass) plugman --platform --project --plugin org.apache.cordova.device-orientation

cordova-plugin-dialogs plugman --platform --project --plugin org.apache.cordova.dialogs

cordova-plugin-file plugman --platform --project --plugin org.apache.cordova.file

cordova-plugin-file-transfer plugman --platform --project --plugin org.apache.cordova.file-transfer

cordova-plugin-geolocation plugman --platform --project --plugin org.apache.cordova.geolocation

cordova-plugin-globalization plugman --platform --project --plugin org.apache.cordova.globalization

cordova-plugin-inappbrowser plugman --platform --project --plugin org.apache.cordova.inappbrowser

cordova-plugin-media plugman --platform --project --plugin org.apache.cordova.media

cordova-plugin-media-capture plugman --platform --project --plugin org.apache.cordova.media-capture

cordova-plugin-network-information plugman --platform --project --plugin org.apache.cordova.network-information

cordova-plugin-splashscreen plugman --platform --project --plugin org.apache.cordova.splashscreen

cordova-plugin-vibration plugman --platform --project --plugin org.apache.cordova.vibration

  1. Repaso y conceptos basicos
  2. Ejercicios para repasar
  3. Problematica de desarrollo mobile
  4. Phonegap
  5. Requerimientos e instalacion
  6. Phonegap CLI
  7. [Primeros ejercicios con Phonegap](Ejercicio Phonegap)
  8. Plugins
  9. Hello world
  10. Estructura de un proyecto Phonegap
  11. Plugin Device
  12. Debugging
  13. Incorporando un framework CSS
  14. Plugin Vibration
  15. Sumando partes
  16. Plugin Battery Status
  17. Un poco de jQuery
  18. jQuery Mobile
  19. Navegacion
  20. Plugin Dashboard
  21. Revision de Plugin Dashboard
  22. Paginas extra
  23. ToDo
  24. Persistencia
  25. ToDo Persistente
  26. Plugin Camera
  27. Opciones de camara
  28. App Mi Galeria
  29. Revision de Galeria
  30. Plugin File
  31. Escribir y leer texto
  32. Escribir archivos binarios
  33. Guardando fotos
  34. Debugger: weinre
  35. Inspeccionar con weinre
  36. Phonegap Developer App
  37. Refactor de apps
  38. Plugin Media
  39. Pruebas con audio
  40. Control y monitoreo de audio
  41. Encapsular play/pausa
  42. Hacks
  43. Formato de tiempos
  44. Grabar y reproducir
  45. Proyecto Integrador
  46. Revision de interfaz
  47. Interfaz basica
  48. Entrevista: modelo
  49. Funcionalidad: revision
  50. Seleccion de framework
  51. iRec: navegacion
  52. iRec: fileApi
  53. iRec: guias
  54. iRec: entrevistas
  55. iRec: recordApi
  56. iRec: helpers
  57. iRec: mediaApi
  58. iRec: inicializar paginas
  59. iRec: refactor
  60. iRec: mediaApi refactor
  61. iRec: recordApi refactor
  62. iRec: helpers
  63. iRec: guias.js
  64. iRec: entrevistas.js
  65. iRec: crear guias
  66. iRec: re-inicializando
  67. iRec: re-ordenando
  68. iRec: pendientes
  69. iRec: reporte ux
  70. iRec:revision: volver
  71. iRec:entrevista: volver
  72. iRec:revision: cambios
  73. iRec:revision: stop
  74. iRec:revision: Rew 10"
  75. iRec:revision: tag Go
  76. iRec: limpieza
  77. Firma de apps
  78. Android
  79. Generacion de key
  80. Firma de apk
  81. Alineacion de zip
  82. Firmar con Phonegap
  83. iOS
  84. Detalles finales
  85. Config.xml
  86. Iconos
  87. Splash
Clone this wiki locally