Curso de PhoneGap
De WikiEducator
Saltar a: navegación, buscar
Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos. Ver página de charlas. |
PhoneGap
Tutorial para desarrollar aplicaciones móviles multiplataforma
Contenido
Introducción
Situación actual
- Hay muchas plataformas distintas para smartphones en el mercado
- Android, iPhone, BlackBerry, Nokia, Windows7 Phone, WebOS
- Han aparecido otras nuevas como Bada y Meego
- La fragmentación es fuerte entre los distintos fabricantes ya que no se sigue ningún tipo de especificación o estándar común
Ha pasado antes
- Desarrollos para Linux/Unix, Windows y Mac
- Aparece Java
- Desarrollo Web para distintos navegadores: Explorer, Safari y Firefox
- Aparecen nuevos navegadores como Chrome y Opera provocando mayor fragmentación
- Aparecen frameworks como jquery, YUI o Google Web Toolkit
- Los navegadores empiezan a seguir las especificaciones de la W3C y últimamente casi todos se apoyan en WebKit (el último Opera).
Tipos de aplicaciones móviles
- Aplicaciones aisladas
- Alarma
- Gestor de llamadas
- Explorador de archivos
- ...
- Aplicaciones basadas en web services
- calendario
- cliente de Twitter
- ...
Tipos de desarrollo web
- Aplicaciones Web accesibles via navegador
- Web Services
- Se usan métodos http
- No tiene control de estado
- Estructura directorios como URI
- Se envían ficheros XML, JavaScript Object Notation (JSON), o ambos.
- Extensa lista de aplicaciones web que permiten consumir Web Services
Tipo de aplicaciones Web con PhoneGap
- PhoneGap sirve para realizar aplicaciones que utilicen las características del dispositivo:
- Camara, GPS, libreta de teléfonos....
- La mayoría de las aplicaciones web basadas en PhoneGap consumirán mediante javascript servicios web
- Ejemplos de aplicaciones de este tipo serían Google Maps, FourSquare...
Necesidades en desarrollos web para móviles
- Desarrollo de la aplicación para varias plataformas
- La experiencia de usuario en la aplicación debe ser consistente entre plataformas:
- Un usuario puede migrar de SO incluso utilizar varios
- La experiencia de usuario podría variar entre dispositivos en función de las características y capacidades de los dispositivos
- Varios equipos de desarrollo no siempre es la mejor opción, por las necesidades de coordinación inherentes.
PhoneGap
- Se basa en la parte común de todos los dispositivos móviles: el navegador
- Los nuevos navegadores se adhieren a estándares como HTML5/CSS3.
- HTML5 nos da mucha funcionalidad: procesos en background mediante web workers, soporte offline, base de datos...
- CSS3 permite que nos despidamos de flash para realizar gradientes, bordes redondeados, páginas responsivas, vistas de impresión, etc.
- Todas las plataformas móviles excepto Windows 7 Phone utilizan un navegador basado en webkit
Webviews
- Piensa en una aplicación PhoneGap como un navegador embebido (sin marco, "chromeless browser") dentro de la aplicación y que ejecuta HMTL5/CSS.
- Estos navegadores embebidos es lo que se conoce como webview
- Cada una de las pantallas de nuestra aplicación será un webview.
- Desde el webview ejecutaremos código JavaScript que comunicará con código nativo del dispositivo.
- Todos los dispositivos permiten al código en JavaScript hacer llamadas a código nativo en Java/C++/Objective C y al revés.