Capitulo 4: Componentes Android

Documentos relacionados
Desarrollo de apps para móviles Android. Conceptos básicos de las aplicaciones Android

Curso de Android con Java

U2. Introducción al desarrollo de aplicaciones móviles Smartphone y Android Desarrollo de Aplicaciones III TIC-UTSV Enero 2015 I.S.C.

Hola Android. Introducción al desarrollo de aplicaciones para Android

Crear una Activity en Android. Paso por paso

MODELO DE IMPLEMENTACIÓN


Android Con Java. Ejercicio 2. Ciclo de Vida de las Actividades en Android. Ejercicio 2. Ciclo de Vida de las Actividades en Android

Ejercicios - Servicios

Ejercicios - Persistencia en Android: proveedores de contenidos y SharedPreferences

INTRODUCCIÓN A ANDROID

Guía Notas Parciales. Intermedio

Servicios - Ejercicios

MANUAL DE INGRESO PÁGINA Tarjeta Empresarial

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

Móvil Seguro. Guía de Usuario Terminales Android

PRACTICAS DE ANDROID 12 - Lanzar un segundo "Activity" y pasar parámetros Problema:

Unidad I. Introducción a la programación de Dispositivos Móviles

WINDOWS : TERMINAL SERVER

INTRODUCCIÓN.

GUIA COMPLEMENTARIA PARA EL USUARIO DE AUTOAUDIT. Versión N 02 Fecha: 2011-Febrero Apartado: Archivos Anexos ARCHIVOS ANEXOS

MANUAL DE BANCA ELECTRÓNICA

Capitulo 1: Plataforma Android

Manual Ingreso Notas y Acta Electrónica

Guía de usuario CUBO TI

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD

Desarrollo de Aplicaciones Web Por César Bustamante Gutiérrez. Módulo I: Conceptos Básicos Tema 1: Concepto iniciales.

MANUAL DE USUARIO: AGENCIA DE VIAJES Configuración. Principales funcionalidades

Preguntas Frecuentes de MiCRM Enlace

Capitulo III. Diseño del Sistema.

Vamos a comenzar creando un nuevo proyecto de Android utilizando los siguientes parámetros en el cuadro de diálogo:

Diseño de aplicaciones móviles seguras en Android.

MANUAL DE USUARIO. Manual Básico de Primeros Auxilios. Introducción

Capitulo 5. Implementación del sistema MDM

PROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO...

Manual del usuario USO DEL MERCADO

Guía para El Proveedor **********

Manual Terabox. Manual del usuario. Versión Telefónica. Todos los derechos reservados.

ASUS WebStorage Manual del usuario

Manual de Usuario FACTURA99 FACTURACIÓN. Factura99 FACTURA 99

TEMA 1. Introducción

Guía de usuario. Docentes. Autoservicio de PowerCAMPUS

Programa Maestro. E-Learning Class v 6.0

Haga clic en los recuadros donde indica la mano y regrese al inicio del capítulo al hacer clic en el título de la sección donde se encuentra

Guías de ayuda Data Manager_. Gestione y administre las cuotas de tráfico de datos de las cuentas de su empresa.

MICQ. Trabajo Práctico Final Seminario de Ingeniería en Informática I Facultad de Ingeniería, UBA. Junio Cátedra: Pablo Cosso

Instalación del Admin CFDI

MANUAL DE USO MICROSOFT LYNC ONLINE

GoToMeeting. Guía para asistentes Citrix Online UK Ltd. Todos los derechos reservados.

Digitales Emitidos Versión 1.0

App para realizar consultas al Sistema de Información Estadística de Castilla y León

Manual hosting acens

IVista: es la interfaz con la que el Presentador se comunica con la vista.

Manual Del Usuario mcloud. Manual del Usuario. Versión Movistar. Todos los derechos reservados.

INDETEC MANUAL DE ACTUALIZACIÓN SAACG.NET

GUIA ACTIVIDAD TAD (TRAMITACIÓN A DISTANCIA) SISTEMA DE ADMINISTRACIÓN DE DOCUMENTOS ELECTRÓNICOS SADE

Manual Centro de Soporte

Qué es Google Calendar? Qué se puede hacer en Google Calendar?

MONITOR EDC. Contenido

Manual de USO de la Aplicación. Pasarela SMS

MANUAL DE POLÍTICAS Y PROCESOS DE BANCA ELECTRÓNICA

GPS Colaboración PERSONALIZAR PROCESOS DE SELECCIÓN

1.- GENERAL. 2.- INGRESO AL SISTEMA.

DOCUMENTOS COMPARTIDOS CON GOOGLE DOCS

Tema 2: Introducción a Android

Aplicación de protección con contraseña para los dispositivos flash USB de Verbatim

Guía de instalación de la carpeta Datos de IslaWin

Para descargar la versión más reciente de Skype accedemos al sitio web de Skype y luego hacemos clic en Descargar Skype para escritorio de Windows.

Movilidad. Pasa demasiado tiempo fuera de la oficina? Solución móvil Dynamics NAV

Instalación del Software Magaya

Manual de la Aplicación Móvil Creapedidos. Gestión y seguimiento de pedidos desde tu dispositivo móvil.

SAP SOLUTION MANAGER 7.1 Service Desk MANUAL DE USUARIO CREADOR. Fecha entrega 12 de junio de 2014 Revisión 1.0

Procesos. Procesos. Concurrencia de procesos. Qué es un proceso? Estados de un proceso. Modelo de 2 estados. (C) 2008 Mario Medina 1

SISTEMA ARANDA PARA GESTIÓN DE CASOS EN SRM MANUAL DE OPERACIÓN

Copyright Todos los derechos reservados. Aranda Software Corp.

O C T U B R E SOPORTE CLIENTE. Manual de Usuario Versión 1. VERSIÓN 1 P á g i n a 1

MINISTERIO DE EDUCACION NACIONAL

COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA

CAPÍTULO 1. Visión general y entorno de desarrollo... 21

BIENVENIDO A Dhl PROVIEW GuíA DEl usuario

Guía del usuario. Centro de facturación de UPS

MANUAL DE USUARIOS DEL SISTEMA MESA DE SOPORTE PARA SOLICITAR SERVICIOS A GERENCIA DE INFORMATICA

Guía Rápida de Inicio

Manual del usuario Corporativo

La obra se proporciona bajo los términos de esta licencia pública de Sisoft de México

Programación Android Completo

Informe de Evaluación de Edificios (IEE)

SISTEMA DE GESTIÓN DE INCIDENCIAS Y REQUERIMIENTOS MESA DE AYUDA SINAT MANUAL DE USUARIO

Programación en Android LSUB, GSYC, URJC

Banco de la República Bogotá D. C., Colombia

Examen 2.0 Versión 1

Factura Electrónica. Si desea acceder directamente a un capítulo, posicionese sobre el número de página y haga clic.

MANUAL SMART WATCH ID-M02

Preguntas Frecuentes. Plataforma ScienTI. Aplicativos CvLAC y GrupLAC

Versión Telefónica. Todos los derechos reservados.

[I-SOLVER] MANUAL USUARIO. i-solver GESTIÓN DE INCIDENCIAS 2012

Transcripción:

Capitulo 4: Componentes Android Elaborado por: Gary Briceño http://gary.pe http://gary.pe 1

http://gary.pe 2

1. COMPONENTES DE LA APLICACIÓN http://gary.pe 3

Componentes Android permite a los desarrolladores la máxima modularidad posible Permite intercambiar funcionalidades entre las aplicaciones Funcionalidad de una aplicación, si esta esta disponible: Otras aplicaciones pueden utilizarla Si ambas se ejecutan en el mismo dispositivo móvil. Se llaman utilizando el Sistema Operativo de Android. http://gary.pe 4

Componentes Tenemos cuatro tipos principales Activities Services Broadcast receivers Content providers Objeto complementario Intent http://gary.pe 5

Activity http://gary.pe 6

Activities Contiene las interfaces gráficas Una aplicación puede tener uno o más Activities Aplicaciones complejas tienen un Activity por cada interfaz de usuario Con más de un Activity, una se selecciona para iniciar la aplicación Deben registrarse en el AndroidManifest.xml http://gary.pe 7

Ejemplo de un Activity public class HelloWorld extends Activity{ } @Override public void oncreate (Bundle savedinstancestate ){ super.oncreate(savedinstancestate); setcontentview(r.layout.activity_hello); } http://gary.pe 8

Services: Se procesan detrás Los servicios no tienen interfaz de usuario Para procesos que se ejecutan por detrás de la aplicación Algunos ejemplos: Cálculos complejos Ejecución de archivos o videos remotos Extraer datos de fuentes remotas Transferencia de datos entre dispositivos Los servicios se crean heredando la clase Service. Los servicios se comunican utilizando AIDL ( Android Service Definition Language ) Deben registrarse en el AndroidManifest.xml http://gary.pe 9

Algunos ejemplos: Broadcast Receiver: Ejemplos Un mensaje de batería baja Notificación de Cambio de zona Cambio en la preferencia del lenguaje Un mensaje de la cámara Ejemplo de alerta entre aplicaciones: Indicación de que la descarga termino Una indicación de que el video esta listo para ejecutarse http://gary.pe 10

Broadcast Receiver: Anuncios y Notificaciones Hereda de la clase BroadcastReceiver Es un componente de comunicación y recibe notificaciones del SO Android Otros componentes de aplicación, o Sus propios componentes Se pueden más de una alerta. Una alerta puede o no iniciar un Activity. También utilizan la clase NotificationManager para alertar al usuario http://gary.pe 11

Content Providers: Manejo de Datos Heredan de la clase ContentProvider Permiten el intercambio de información Representa los datos creados por su aplicación, por otra aplicación o el Sistema Operativo Por ejemplo, El Android phone utiliza un Content Provider para acceder a la base de datos de contacto Los datos pueden estar en un archivo o una SD Card o la BD SQLLite http://gary.pe 12

Content Provider Application Application Activity Activity Application Activity Content Resolver Service Content Resolver Content Provider Content Resolver Data SQLite XML Remote Store http://gary.pe 13

Intent Son mensajes que indican la acción a procesar Main, view, edit, pick, etc La información se envía mediante URI startactivity(new Intent(Intent.VIEW_ACTION, Uri.parse("http://www.fhnw.ch")) startactivity(new Intent(Intent.VIEW_ACTION, Uri.parse("geo:47.480843,8.211293")) startactivity(new Intent(Intent.EDIT_ACTION, Uri.parse("content://contacts/people/1")) http://gary.pe 14

Estructura de Aplicación Activity Services Intent Broadcast Receiver Activity Content Resolver Content Provider Remote Store http://gary.pe 15

ACTIVITY http://gary.pe 16

Ciclo de Vida http://gary.pe 17

Por qué? No colapsar si se recibe una llamada o cambia de aplicación cuando utiliza su aplicación Optimizar el uso de recursos cuando el usuario no está utilizando la aplicación No perder la información de la aplicación si el usuario deja la aplicación y retorna luego No perder la información de la aplicación cuando esta gira de la orientación vertical a la orientación horizontal.

Declaración de la Actividad principal Se puede definir con que Activity iniciara la aplicación, esto se debe realizar en el AndroidManifest.xml El Activity principal se debe declarar dentro de las etiquetas <intent-filter> que incluye la acción MAIN y la categoría LAUNCHER

oncreate()

oncreate() El sistema crea una nueva instancia de la Actividad utilizando oncreate() Debe implementar el método oncreate() para establecer los valores que hagan que su aplicación inicie en forma lógica Este método solo se ejecuta una vez durante la vida de toda la aplicación

Diagrama de ejecución oncreate()

Luego de oncreate() Cuando oncreate() finaliza la ejecución, el sistema llama a onstart() y onresume(). Activity nunca reside en los estados Creado o Iniciado. Técnicamente el Activity se convierte visible cuando se llama al método onstart(), pero onresume() es llamado automaticamente

Destroy de un Activity Mientras que oncreate() es el primer método, ondestroy() es el último Cuando el sistema llama a este método implica que el programa será removido completamente de la memoria Muchas aplicaciones no la necesitan, debido a que las referencias a clases son destruidas en onpause() y onstop() ondestroy() es útil si su Activity incluye procesos en Background u otro tipo de recursos que potencialmente bloqueen el uso de memoria si no son cerrados apropiadamente.

ondestroy() El sistema llama a ondestroy() luego de llamar a onpause() u onstop() En algunos casos se puede llamar a finish() desde oncreate(), que automáticamente llama a ondestroy()

Estados Paused y Resumed

Paused Activity Cuando el sistema llama onpause(), su Activity es parcialmente visible. Comúnmente es una indicación de que el usuario cambio la pantalla y pronto cambiara al estado Stop. Generalmente se puede usar con: Detener animaciones u otras acciones en curso que consumen CPU. Confirmar los cambios no guardados, solo si los usuarios esperan que estos se guarden permanentemente (por ejemplo un email en curso) Liberar los recursos de sistema o cualquier recurso que pueda afectar la vida de la bateria.

Resumed Activity Cuando se cambia del estado Paused al estado Resume, se llama a onresume() El Activity llama a este método cada que entra en primer plano, incluso cuando se crea por primera vez. Se debe implementar onresume() para iniciar los componentes que se liberan durante onpause() e iniciar cualquier otro componente que se requiera.

Paused y Resumed Activity

Stopping y Restarting

Stopping Cuando la aplicación llama a onstop() la aplicación ya no es visible y libera todos los recursos que no son necesarios mientras el usuario no lo esta utilizando. Si es necesario, en onstop() el sistema puede destruir la instancia si requiere memoria. En caso extremo se puede matar la aplicación sin llamar a ondestroy() Se recomienda liberar recursos en onstop(). Cuando se llama a onstop() el objeto reside en memoria y es recargada cuando pasa al estado Resumed.

Start/Restart Cuando un Activity regresa del estado Stop, se llama al método onrestart(). Luego de llamar al método onrestart(), se llama al método onstart(). El método onstart() se llama cada que un Activity se hace visible. No es común que una aplicación utilice el método onrestart().

EJERCICIO http://gary.pe 33

Ejercicio 4: Revisar el Ciclo de Vida de Un Activity Desplegar el proyecto relacionado al ciclo de vida de un Activity proporcionado por el profesor Analizar el orden de trabajo de los estados del ciclo de vida de un Activity http://gary.pe 34

EJERCICIO http://gary.pe 35

Ejercicio 5: Activar o Detener un Servicio Generar un proyecto Android Generar la clase MyService que hereda de Service Implementar dos botones en el activity_main.xml Un primer botón para iniciar el servicio Un segundo botón para detener el servicio Implementar el evento para que se active y detenga un servicio http://gary.pe 36

LABORATORIO http://gary.pe 37

Laboratorio 5 Crear un proyecto Android Generar una Calculadora ( presentación ) Utilizar el elemento Button y EditText Implementar los eventos para los botones Referencia: Utilizar la ejecución de los eventos del ejercicio 5 http://gary.pe 38

http://gary.pe 39