Phonegap, desarrollo aplicaciones móviles para múltiples plataformas

Existen muchos puntos fuertes para el desarrollo de aplicaciones para móviles empleando PhoneGap. Pero los más interesantes son estos dos:

1) Phonegap te permite desarrollar en diferentes plataformas móviles y tablets empleando prácticamente el mismo código: Android, iPhone, iPad, Windows mobile, Bada, blackberry, symbian, …
2) Phonegap no emplea nuevos lenguajes, simplemente utiliza javascript (interacción), html5, css3 (presentación).

Cualquier desarrollador web podría comenzar a crear aplicaciones móviles multiplataforma sin que supusiera un gran handicap. Además el desarrollador podría emplear la API del móvil pudiendo tener acceso a la geolocalización, camara, multimédia, vibrador, acelerómetros, brújula, contactos del móvil, archivos, redes, notificaciones, vibrador, etc

Además existen ya varios frameworks que te ayudarán a salvar las diferencias entre la web y la aplicación móvil en cuanto a interacción, presentación y usabilidad como por ejemplo xuijs, jQTouch y jQuery Mobile.

Para comenzar a utilizar phonegap basta con tener listo el SDK para el desarrollo para móviles de tu plataforma favorita. Para android por ejemplo basta con tener instalado eclipse 3.4 o posterior junto con una copia del SDK para android (http://developer.android.com/sdk/index.html) y el complemento ADT de eclipse.

A continuación hay que descargarse phonegap y comenzar un proyecto android en el eclipse.

1) Se crean los directorios /libs y /assets/www
2) De phonegap descargado se copian los archivos phonegap.js en /assets/www y phonegap.jar en /libs
3) En la clase Activity inicial del proyecto debe cambiar el extend Activity por extend DroidGap
4) Sustituir setContentView() por super.loadUrl(“file:///android_asset/www/index.html”);
5) Añadir el principio del fichero el import : import com.phonegap.*;
6) Añadir los permisos que vayas a utilizar para la aplicación (En el archivo AndroidManifest.xml debajo de versionName)
7) Colocar el archivo plugins.xml de phonegap en la carpeta /res/xml/

Y listos para programar en tu fichero index.html en /assets/www

Si tienes problemas y no quieres liarte con crear entornos de desarrollo para todas las plataformas puedes empezar a desarrollar directamente empleando PhoneGap build en http://build.phonegap.com/
Aquí puedes enviar tu código y recibir una aplicación lista para publicar en Market, ya sea IOS, Android, webOS, Symbian, BlackBerry, Windows Phone u otros dispositivos.

Para empezar a programar basta entender una lista de nuevos eventos y API que permiten acceder a las funcionalidades del móvil empleando sólo javascript

Como ejemplo, en phonegap está disponible el evento onDeviceReady:

<script type=”text/javascript”>
document.addEventListener(“deviceready”, onDeviceReady, false);

function onDeviceReady()
{
//llamada inicial a la API de phonegap
}
</script>

Este evento índica que se ha cargado el DOM del documento HTML y ya podemos comenzar a ejecutar nuestro código. Además tenemos estos nuevos eventos javascript disponibles en phonegap

backbutton
deviceready
menubutton
pause
resume
searchbutton
online
offline

Que permiten detectar los eventos propios asociados a un móvil para poder actuar en consecuencia. Creo que los nombres son bastante autoexplicativos.

Para acceder a toda la funcionalidad del móvil basta con estudiar la documentación de la API http://docs.phonegap.com/en/2.4.0/index.html (cuando escribí este articulo era la 2.4.0). Donde puedes ver como acceder a todo las funcionalidades del móvil empleando solamente javascript.

Espero que este artículo te sirva para atreverte con esta nueva tecnología

 

Robot phonegap
Robot phonegap