Android
Los dispositivos móviles se pueden
clasificar en tres tipos:
Teléfonos. Son los más pequeños de la casa,
y por tanto los más ligeros y más transportables.
PDAs, organizadores electrónicos u
ordenadores de mano. Su nombre (PDA) significa Personal Digital Assistant (asistente personal digital)
Consolas. En realidad esta categoría debería
Desventajas de los dispositivos
móviles
Existe la necesidad de ahorrar energía por lo
que obliga a utilizar procesadores con una capacidad de cómputo limitada y baja
frecuencia de reloj, por lo que el uso
intensivo de cálculos, gráficos, sonido y
conexiones inalámbricas limitan la vida de la batería.
La memoria disponible y el almacenamiento
de datos persistente es limitada en
Android
Sistema operativo móvil Software libre
(Licencia Apache) - 2.x . Creado por Android Inc. Comprado en 2005 por Google y es
mantenido por Open Handset Alliance.
Internamente android ejecuta un kernel de
GNU/Linux con 12 millones de líneas de
código (incluso el Kernel), donde: 3 millones están en XML, 2.8 millones en C, 2.1
Principales características de
android:
Navegador integrado basado en WebKit (WebKit es una plataforma para
aplicaciones que funciona como base para el navegador web Safari, Google Chrome entre otros).
Principales características de
android:
Gráficos 3D basados en OpenGL (OpenGL (Open Graphics Library) es una
especificación estándar que define una
API multilenguaje y multiplataforma para escribir aplicaciones que produzcan
gráficos 2D y 3D).
Soporte a audio, vídeo y imágenes Bluetooth, EDGE, 3G y wifi.
¿Por qué android y no otro ?
2012 se vendían a nivel mundial 1.750 millones
de teléfonos móviles, y de esos, el 75% no tenían pantalla táctil.
Activos se encuentran 5.500 millones de
teléfonos móviles. De esa cifra, 1.200 millones erán smartphones a finales de 2012, lo cual
equivale al 22% de todos los móviles que hay en el mundo.
Ventas de Teléfonos celulares
Arquitectura de Android
Componentes de una aplicación
Activity
Es la clase principal de Android, y cada pantalla que se muestra en la aplicación es una clase que hereda de Activity. Así podríamos decir que una actividad
onCreate(Bundle)
Este ya lo conocemos. Se invoca cuando arrancamos la aplicación,
es decir, cuando creamos la actividad. Aquí ponemos las tareas de inicialización de la interfaz y configuraciones estáticas. El
parámetro es NULL o contiene información de estado guardada previamente por onSaveInstanceState() (ya lo veremos luego)
onPause()
Ocurre cuando la actividad va a pasar al fondo porque otra ha
sido lanzada para ponerse delante. Se utiliza para guardar el estado de la actividad.
onResume()
Se invoca cuando la actividad va a empezar a interactuar con el
usuario.
onStop()
Se invoca cuando la actividad va a dejar de ser visible y no se
onReStart()
Es invocado cuando una actividad parada pasa a estar activa. Si
la actividad está en pausa no llama a este método ya que no está oculta y por lo tanto no es necesario mostrarla de nuevo.
onStart()
Se invoca cuando la actividad va a ser mostrada al usuario onDestroy()
Se invoca cuando una actividad va a ser destruida. Si hay
escasez de recursos puede que este método no sea invocado
onSaveInstanceState(Bundle) y onRestoreInstanceState
(Bundle)
Intent
Son mensajes del sistema, que viajan por el interior del dispositivo para notificar a las aplicaciones de varios eventos, desde los cambios de estado de hardware , a los datos entrantes, de eventos de aplicación. No sólo se puede responder a los intents, si no que usted puede crear sus propios intents, para poner en marcha otras
Intent
También se puede definir como un nexo de
unión. Su uso más frecuente es para pasar de un
Activity a otra para realizar una acción en una actividad.
Esta clase permite que el programador se
despreocupe del flujo de datos de su aplicación, ya que la clase Intent se encarga de ello y puesto que todos los Android disponen de un botón
Content Providers
Los proveedores de contenido ofrecen un
nivel de abstracción de los datos
almacenados en el dispositivo que se
pueden acceder por varias aplicaciones. El modelo de desarrollo de Android promueve que los datos puedan estar a disposición de otras aplicaciones, así como propias,
Service
Un Servicio representa una aplicación ejecutada sin interfaz de usuario, y que generalmente tiene lugar en segundo
View
Todo objeto que queremos que se
muestre por pantalla se debe heredar de la clase View.
Podemos definir nuestras propias clases que hereden de View, o usar las que nos proporciona el API de Android. Los objetos View los podemos organizar y ordenar
Estructura de un proyecto
SRC: en esta carpeta se incluyen las clases con el código fuente de la aplicación al igual que en cualquier otro proyecto Java. Dentro de este directorio lo podemos organizar
como queramos, y con cuantas subcarpetas como sean necesarias, con la peculiaridad de que, en un proyecto Android, las
Formas de diseñar la interfaz de
usuario
Forma declarativa Es diseñar la interfaz en XML.
Especificando que se quiere ver en la
pantalla y no como se tiene que mostrar. El método declarativo permite separar la
Forma declarativa……
El tenerlos separarlos permite modificar la interfaz de la aplicación sin modificar el
código fuente. Así, se podría diseñar
layouts para diferentes orientaciones de la pantalla, diferentes tamaños de pantalla o diferentes idiomas sin tocar el código