Programación en android

De WikiEducator
Saltar a: navegación, buscar
Road Works.svg Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos.
Ver página de charlas.
Road Works.svg





Android para desarrollar



Icon key points.gif

Puntos clave

Es muy diferente desarrollar para dispositivos móviles Vs Aplicaciones de escritorio

  • En ambos casos estamos desarrollando código
  • En ambos casos los dispositivos finales son máquinas con procesadores
  • El usuario las utiliza de forma muy difente
  • El interfaz físico/lógico con el usuario es muy diferente


Android para desarrollar

  • Desarrollar en android, no es lo mismo que desarrollar para escritorio (local o servidor)
  • La diferencia es el dispositivo final sobre el que va a correr la aplicación

Algunas caracteristicas de aplicaciones móviles

  • Disponemos de menos recursos (memoria, velocidad de procesado, hardware especializado GPU, ...)
  • El interfaz con el usuario es mucho más limitado (pantalla en smartphone o teclado reducido)
  • En móviles las aplicaciones pueden ser mucho más utilizadas, el usuario siempre las lleva encima.
  • Existen muchos tipos de terminales, diferentes versiones, resoluciones
  • Diferentes lenguajes de programación con diferentes IDE's para lo mismo
  • No se desarrolla en el mismo equipo donde se prueba (los bytes code se generan en el pc donde se desarrolla.

Empecemos



Icon activity.jpg

Actividad

Crear un nuevo proyecto android



Estructura de ficheros del proyecto

Ficheros xml interesnate alternativa

Desarrollando

  • No entramos en temas de ingeniería de software
  • Android permite usar ficheros xml para cualquier tipo de recurso
  • Entiende por recurso cualquier elemento que no sean instrucciones,por ejemplo
  • Cadenas de caracteres
  • Colores
  • Vectores con valores
  • pantalla o interfaz gráfico
  • Idioma
  • y más conceptos ...
  • Por supuesto estos elementos los podemos crear directamente en código o bien acceder a ellos a través del fichero xml donde se definen, lo cual es muy recomendado y aporta flexibilidad.
  • Por ejemplo en el caso de string.xml permite realizar facilmente una traducción de tu app a otro lenguaje.
  • Haremos un ejemplo en breve


Herramientas internas

SQLITE 3
  • Es un gestor de bases de datos no cliente servidor
  • Muy compacto, se almacena en un fichero
  • Ubicación <android-sdk>/tools
  • Referencia: http://www.sqlite.org/
  • Dentro del teléfono, sqlite3 <database>

.databases .tables .mode

  • Típicas instrucciones de sql
INSERTS, SELECTS, DELETE, UPDATES …

Herramientas externas

adb: MONKEY Ejecuta pseudo eventos en la aplicación Forma de testear la aplicación adb shell monkey -p your.package.name -v 500

Driver

<sdk>/google-usb_driver