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");
   }
}
<!DOCTYPE HTML>
<html>
<head>
<title>PhoneGap</title>
<script type="text/javascript" src="phonegap-1.1.0.js"></script>
<script type="text/javascript">
/** Called when phonegap javascript is loaded */
function onDeviceReady(){
document.getElementById("helloworld").innerHTML
="Hello World! Loaded PhoneGap Framework!";
}
/** Called when browser load this page*/
function init(){
document.addEventListener("deviceready", onDeviceReady, false);
}
</script>
</head>
<body onLoad="init()">
<h1 id="helloworld">...</h1>
</body>
</html>