4. Introducción
Android maneja una estructura de
componentes que permite la generación
de aplicaciones muy al estilo de Java
Se basa en un modelo de programación
muy parecido al MVC
Tiene separadas las capas de
presentación y la lógica de negocio
5. Activity
Es el controlador principal de la ejecución
Permite controlar lo que se va a visualizar
en la pantalla
Hay distintos tipos de controladores
específicos
Todos heredan de Activity y está
relacionados con los distintos tipos de
pantallas que maneja Android
7. Activity: métodos
principales
setContentView: permite cargar una vista
findViewById: permite capturar un objeto de la
vista
startActivity: permite arrancar otra activity
onCreateOptionMenu: carga un menú de opciones
onOptionsItemSelected: permite realizar acciones
dependiendo del elemento del menú
seleccionado
8. Application
Permite arrancar una clase aplicación
cuando arranca la aplicación
Permite gestionar las conexiones con las
fuentes de datos de manera independiente
a las activities
Luego se puede acceder a la instancia del
objeto de la aplicación desde las
activities
10. Adapter
Permite gestionar la transición desde un
conjunto de datos que van a ir a la Vista
Se utiliza principalmente para dibujar
colecciones de información en un
formato visual de listado
ArrayAdapter y BaseAdapter son dos
ejemplos
12. Adapter: Métodos
getCount: numero de elementos a dibujar
getItem: devuelve un elemento por posición
getItemId: devuelve el id de un elemento por
posición
getView: devuelve una vista con la conversión
de los datos a la vista por posición
normalmente genera su propio layout
13. Layout
Permite definir el diseño de la vista
Existen Layouts predefinidos de
Android
Incluyen Views
Son ficheros XML
Tienen una estructura jerárquica
14. Layout: Views
Todo elemento visual en Android es una View
Se incluyen en los ficheros XML como etiquetas
Tienen una representación como Clases y objetos
para cada tipo de view
Podemos configurar su ancho y alto
fill_parent: coge todo el tamaño disponible
wrap_content: ocupa en pantalla sólo lo que
ocupe el contenido
15. Layouts: Tipos
LinearLayout
Colocación en vertical u horizontal
RelativeLayout
Colocación respecto al padre y a otros elementos
FrameLayout
Coloca todos los elementos en la esquina superior izquierda
TableLayout
Sirve para representar tablas de información
GridLayout (API 14)
Intenta colocar elementos de manera distribuida en la pantalla
16. Service
Permite ejecutar código de manera
paralela de manera muy similar a
cómo se realiza un servicio en una
aplicación web Java
Se suele arrancar desde la
aplicación o una actividad la clase
principal es Intent Service
17. Intent
Es el componente que nos permite realizar
saltos entre actividades
Permite la comunicación entre aplicaciones de
Android
El Sistema puede generar intents para notificar
acciones que hayan pasado a las aplicaciones
El arranque de una aplicación se realiza a
través de una intent que genera el sistema
18. Intent: Tipos
Implícita
realiza un salto conforme a la configuración
del dispositivos
Permite realizar saltos a Activities que
desconocemos o que son de sistema
Explítica
Nosotros le indicamos el destino de la intent
porque conocemos la clase destino
19. Intent: Extras
Permiten adjuntar información que pasamos con la intent
Funciona de manera muy parecida a un Map
tiene una clave y un valor
Hay que pasar los mínimos datos posibles mediante la
intent, es un proceso muy costoso para el sistema
Intent.putExtra
Clase Bundle
getExtras
20. Broadcast Receiver
Permite registrar ante eventos del sistema y de
las aplicaciones
se pueden registrar con el Android Manifest o
programáticamente
El método principal es onReceive
Utilizado principalmente para notificaciones
internas de android
bateria, arranque, etc..
21. Content Provider
Permite la comunicación entre aplicaciones en Android
Normalmente funciona como un acceso a base de datos
remoto
Tenemos dos componentes
La aplicación que tiene los datos
La aplicación que accede a los datos
Un ejemplo es la agenda de contactos
Cualquier aplicación puede acceder a ella si se tienen
los permisos oportunos
22. Notification
Permite generar alertas para que el usuario sepa
que es lo que está pasando en el sistema o en una
aplicación
Las notificaciones son visibles desde la barra de
notificaciones o desde dispositivos que estén
enganchados contra ellas (android wear)
Se pueden generar desde cualquier parte de la
aplicación
Pueden contener imágenes y ser personalizadas
23. Manager
Son un tipo de componente que está en
ejecución siempre que el dispositivo esté
arrancado
Son servicios que tienen acceso a los
procesos que se ejecutan en el dispositivo
Por ejemplo son los encargados de
gestionar notificaciones y acceso a
sensores
24. Licencia y
Financiación
Este curso ha sido financiado por el
Ayuntamiento de Vitoria-Gasteiz
La licencia de la presentación el CC-
BY-SA-NC 3.0 registrada a nombre de
David Vaquero Santiago
http://creativecommons.org/licenses/
by-nc-sa/4.0/