Curso de jQuery-Introducción

De WikiEducator
Saltar a: navegación, buscar


Arquitectura

Arquitectura de una aplicación en PhoneGap

Arquitectura javascript

  • Una aplicación mediante PhoneGap tendrá dos partes bien definidas:
  • JavaScript para la parte de negocio: Interfaz de usuario y funcionalidad
  • Javascript para acceder y controlar el dispositivo

Librerías PhoneGap

PhoneGap viene con 3 componentes principales:
  • Código nativo
Debemos copiar el jar correspondiente a la carpeta de lib
Añadir el jar al class path (botón derecho Build Path->Add to build Path)
  • Fichero de configuración en XML
Copiar el directorio XML del directorio Android de PhoneGap a la carpeta res
  • Fichero con el JavaScript de PhoneGap
Creamos una carpeta www dentro del directorio assets
Ahí colocaremos tanto el javascript como nuestro index.html

Proyecto Hola Mundo

  • Creamos un nuevo proyecto en el que situaremos los ficheros anteriores
  • En Android una clase llamada actividad representa una pantalla de la aplicación, para usar PhoneGap, cambiaremos la pantalla de Actividad a DroidGap.
  • DroidGap es una actividad especial, que nos permite mostrar páginas html.
  • Nuestro fichero HolaMundo.java deberá quedar así:
package org.examples.phonegap.helloworld;
import android.os.Bundle;
import com.phonegap.DroidGap;
public class HelloWorld extends DroidGap {
   /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      super.loadUrl("file:///android_asset/www/index.html");
   }
}
  • Nuestro fichero html con el Hola Mundo (cambiando el parámetro src del script por la versión correspondiente):
<!DOCTYPE HTML>
<html>
   <head>
      <title>PhoneGap</title>
         <script type="text/javascript" src="cordova-x.y.z.js"></script>
         <script type="text/javascript">
            /** Se llama cuando el script de PhoneGap se haya cargado*/
            function onDeviceReady(){
               document.getElementById("helloworld").innerHTML="¡Hola Mundo! ¡Se ha cargado el framework de PhoneGap!";
            }
            /**Esta función se llama cuando el usuario haya cargado la página:*/
            function init(){
               document.addEventListener("deviceready", onDeviceReady, false);
            }
         </script>
   </head>
   <body onLoad="init()">
      <h1 id="helloworld">...</h1>
   </body>
</html>