INTRODUCCIÓN A ANDROID



Documentos relacionados
Cursos de orientación profesional


Capitulo 4: Componentes Android

Tema 2: Introducción a Android

Taller Caldum Introducción al desarrollo Android

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

App Android: Desarrollo de aplicaciones en Android.

TEMA 1. Introducción

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

Capitulo 1: Plataforma Android

Visión general y entorno de desarrollo

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

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

DESARROLLADOR ANDROID INTRODUCCIÓN ANDROID. Ing. Marco Antonio Toscano Freire tw: martosfre

Programación Android Completo

Principios de la programación en Android y API básico

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

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

Por medio de la presente nos complace presentar a ustedes nuestra propuesta de certificaciones de alta cobertura por volumen.

SISTEMAS OPERATIVOS DE DISPOSITIVOS MÓVILES HÉCTOR DOMÍNGUEZ KRYSLER PINTO

MODELO DE IMPLEMENTACIÓN

PROGRAMA DE MATERIA DATOS DE IDENTIFICACIÓN DESCRIPCIÓN GENERAL OBJETIVO (S) GENERAL (ES) OPTATIVA PROFESIONALIZANTE II

Curso de Android con Java

Presentación y objetivos

Ejercicios - Servicios

Desarrollo de apps para móviles Android. Introducción a Android

Curso de Android con Java

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

Servicios - Ejercicios

Android Professional

1. El entorno de desarrollo Eclipse

Crear una Activity en Android. Paso por paso

Introducción a la Programación en Android

Oficina virtual IFAPA. Preguntas y respuestas frecuentes /Presenta-PCT

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

INTRODUCCIÓN.

WINDOWS : TERMINAL SERVER

Tutorial 1. Instalación del entorno de desarrollo de Android. Curso de perfeccionamiento: Programación de Android TUTORIAL 1: INSTALACIÓN DEL SOFTWARE

Oficina virtual IFAPA. Preguntas y respuestas frecuentes /VEA

Curso Online de Programación Android

Android Guía de desarrollo de aplicaciones para Smartphones y Tabletas

Internet Information Server

Objetivos y Temario CURSO DESARROLLO APLICACIONES ANDROID 4.0

Producto. Información técnica y funcional. Versión 2.8

Samsung Tech Ins.tute - UPM DESARROLLO DE APLICACIONES EN ANDROID. Mayo Abraham Gu.érrez Rodríguez. Abraham Gu.

Entre los más conocidos editores con interfaz de desarrollo tenemos:

UNIVERSIDAD TECNICA DEL NORTE

WINDOWS : COPIAS DE SEGURIDAD

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

Programación Multimedia y dispositivos móviles.

Guía Rápida de Puesta en Marcha de MailStore

AGREGAR COMPONENTES ADICIONALES DE WINDOWS

TEMA 1. SISTEMAS OPERATIVOS Y ALMACENAMIENTO DE INFORMACIÓN

11/06/2011. Alumno: José Antonio García Andreu Tutor: Jairo Sarrias Guzman

INSTRUCCIONES ACTUALIZACION PASO A PASO a MICROSOFT WINDOWS-7 (rev.1.0):

Material Actividad de aprendizaje 1. Primeros Pasos con App Inventor

Android 4 Principios del desarrollo de aplicaciones Java

Cuestiones 1. Que sistema operativo tienes instalado en el ordenador de tu casa?

Modelo de Objetos Distribuidos

SERVIDOR WEB PARA ACCESO EN TIEMPO REAL A INFORMACIÓN METEOROLÓGICA DISTRIBUIDA

Agentes con Interfaz Gráfica.

Anexo A Diagramas de Navegación

COLEGIO COMPUESTUDIO

ELABORACIÓN DE TABLEROS DINÁMICOS DE COMUNICACIÓN CON EL PROGRAMA EDITOR TICO

Android 5 Principios del desarrollo de aplicaciones Java

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII

Manual de usuario servidor de archivos para El Colegio de la Frontera Sur

Manual de software. Dynamic Cloud. 10/2014 MS-Dynamic_Cloud v1.2

Instalación del Software Magaya

Tema 1. Conceptos fundamentales de los Sistemas Operativos

MANUAL DE USUARIO. Introducción

Edición de Ofertas Excel Manual de Usuario

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

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

Capítulo V. Implementación

Concepto de sistema operativo

Solar thermal systems design

PASOS A SEGUIR PARA ESCANEAR DOCUMENTOS

*si tuvieron algún problema pueden verificar la documentación oficial Vamos a crear una BD llamada droid_login como lo muestra la siguiente imagen:

Manual del Alumno de la plataforma de e-learning.

Imagen ::: Empezar con GIMP Diseño de materiales multimedia. Web Empezar con GIMP

- MANUAL TÉCNICO - Implantación de software de Marketing Online

Gestión de Proyectos con Open Project

Introducción a la programación orientada a objetos

Modelo Tablet Banghó AERO: 1024

Curso de Android con Java

Escudo Movistar Guía Rápida de Instalación Para Windows

GUIA DE USUARIO. CONFIGURACION CORREO ELECTRONICO

COMO ACTIVAR FREEPBX EN ELASTIX

Transcripción:

INTRODUCCIÓN A ANDROID Por Francisco J. Recio Portillo para http://www.tostring.es

Historia [0] Julio 2005 Google adquiere Android, Inc. Pequeña empresa que desarrolla software para móviles (hasta entonces una gran desconocida) Noviembre 2007 Nace la Open Handset Alliance Consorcio de empresas unidas con el objetivo de desarrollar estándares abiertos para móviles Texas Instruments, Broadcom co., Google, HTC, Intel, LG, Marvel Tech., Motorola, Nvidia, Qualcomm, Samsumg Electonics, Sprint Nextel, T-Mobile Se anuncia su primer producto, Android, plataforma para móviles construida sobre el kernel de Linux 2.6

Historia [1] Octubre 2008 Publicado el proyecto open source Android Distribuido principalmente con licencia Apache 2.0 Partes en otras licencias, p.e. GPL v2 para el núcleo Se abre el Android Market HTC Dream (G1), primer teléfono con Android Diciembre 2008 Nuevas incorporaciones ARM Holdings, Athreos Communications, Asustek Computer Inc., Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp y Vodafone Group Plc.

Historia [2] Noviembre 2009 Motorola Droid Consigue vender 1.05 millones de unidades en 74 días, superando el record establecido por el iphone de Apple Diciembre 2009 16.000 aplicaciones en el Market 60% gratuitas, 30% de pago aproximadamente Febrero 2010 Google anuncia la buena marcha de Android 60.000 teléfonos con Android vendidos al día

Características Características Framework de aplicación que habilita la reutilización y reemplazo de componentes Máquina virtual Dalvik optimizada para móviles Navegador integrado basado en WebKit Gráficos optimizados por una librería gráfica 2D propia; gráficos 3D basados en la especificación OpenGL ES 3.0 SQLite para almacenamiento de datos estructurados Multi-táctil soporte nativo para pantallas capacitivas Soporte para gran variedad de archivos multimedia (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) Telefonía GSM Bluetooth, EDGE, 4G y WiFi (4G, WiMAX,...) Cámara, GPS, compás, acelerómetro... Tethering: usar al dispositivo como punto de acceso inalámbrico Entorno de desarrollo completo incluyendo emulador, herramientas de depuración, profiling de memoria y rendimiento. IDE Android Studio y Eclipse

Arquitectura

Modelo de Aplicaciones [0] Aplicaciones Escritas en Java y empaquetadas en Android package (apk) Cada aplicación es independiente Se ejecuta en su propio proceso de Linux Cada proceso tiene su propia máquina virtual de Java Cada aplicación tiene asignado un ID de usuario de Linux Solo ese ID de usuario tiene permisos para acceder a los archivos de la aplicación Componentes básicos de una aplicación Actividades Servicios Broadcast receivers Content providers

Modelo de Aplicaciones [1] Actividad Presenta una interfaz de usuario enfocada en algo que el usuario puede realizar Elegir un contacto, seleccionar una fotografía,... Una aplicación consistirá en un conjunto de actividades independientes que trabajan juntas Una de las actividades se marca como la inicial al arrancar una aplicación Servicio No tiene UI Se ejecuta en background por periodo indefinido Ej. Reproductor de música Expone una interfaz para interactuar Ej. Parar la reproducción de música Es posible acceder desde otros componentes o aplicaciones

Modelo de Aplicaciones [2] Broadcast receivers No realiza ningún acción por si mismo Recibe y reacciona ante anuncios de tipo broadcast Existen muchos originados por el sistema Ej. Batería baja Las aplicaciones puede lanzar un broadcast No tienen UI, aunque pueden iniciar una actividad para atender al anuncio Content providers Expone un conjunto especifico de datos a otras aplicaciones Los datos pueden estar almacenados en cualquier lugar: fichero, SQLite, internet,... Hace uso de un ContentResolver para acceder a los datos expuestos por un content provider

Modelo de Aplicaciones [3] Activación de los componentes Content providers Al recibir una petición desde un ContentResolver Actividades, Servicios y Broadcast Receivers Al recibir un mensaje asíncrono llamado Intención (Intent) En actividades y servicios Representa la intención de querer realizar algo Ej. La intención de seleccionar un contacto como remitente En broadcast receivers Representa el anuncio del comienzo de una acción Ej. Anunciar que se ha pulsado el botón de la cámara Parada de componentes: Los content providers y broadcast receivers tienen por definición un tiempo limitado de actividad, no necesitan pararse explícitamente. Android proporciona métodos para parar de forma ordenada Activities y services que están en ejecución. Cualquier componente puede ser finalizado por el sistema cuando se detecta que no va a utilizarse o se necesitan recursos extras.

Modelo de Aplicaciones [4] El fichero de manifiesto Propiedades de la aplicación Declaración de todos los componentes existentes en la aplicación Intent filters Un componente indica a intenciones puede responder Declaración de los permisos requeridos uses-permission Acceso a determinado, estado del telefono, acceso a internet, etc. Los permisos que requiere se muestran al usuario al instalar la aplicación Declaración de permisos propios Restringe que aplicaciones pueden hacer uso de un determinado componente

Aplicaciones [0] La aplicaciones en Android solo tienen un primer plano que ocupa toda la pantalla Las aplicaciones están formadas por actividades En un momento dado una actividad pasa al primer plano y se coloca por encima de otra formado una pila de actividades El botón back cierra la actividad y recupera de la pila la anterior La aplicaciones en Android no tienen control de su ciclo de vida Deben estar preparadas para su terminación en cualquier momento Cada aplicación se ejecuta en su propio proceso El runtime de Android gestiona el proceso de cada aplicación y por extensión de cada Actividad que contenga. Para programar en Android se requiere un conocimiento de JAVA

Aplicaciones [1] Representa una cosa concreta que puede hacer el usuario - Corresponden con una pantalla de la interfaz de usuario - Muestra los controles de la interfaz de usuario y reacciona ante las interacciones del mismo - Es una clases derivada de la clase Activity - Toda actividad se declara en el archivo AndroidManifest.xml

Aplicaciones [2] Normalmente una aplicación consta de varias actividades - Cada pantalla se implementa como una actividad - Moverse a la siguiente actividad supone llamar al método - startactivity(), - startactivityforresult() - Una aplicación puede reusar actividades de android o de otras aplicaciones

Actividades Android provee de un conjunto de Views para ayudarnos a crear interfaces simples y modificarlos o extenderlos. View Una actividad se compone de todo tipo de controles o widgets llamados View en Android. La clase View es la clase base de todos los widgets. (Button, EditText, TextView...) La clase ViewGroup es la clase base de los layouts y de otras vistas compuestas Creando una actividad public class HolaMundo extends Activity { @Override public void oncreate(bundle saveinstancestate) { super.oncreate(saveinstancestate); setcontentview(r.layout.main); }

Ciclo de Vida [0] Estados de una actividad Activo (Running): La actividad está encima de la pila, es visible, tiene el foco. Pausado (Paused): La actividad es visible pero no tiene el foco. Se alcanza este estado cuando pasa a activa otra actividad transparente o que no ocupa toda la pantalla. Cuando una Actividad es tapada por completo pasa a estar parada. Parado (Stopped): Cuando la actividad no es visible. Se recomienda guardar el estado de la ui, preferencias, etc Destruido (Destroyed): Cuando la Actividad termina, o es matada por el runtime de Android. Sale de la Pila de Actividades.

Ciclo de Vida [1] Métodos de transición de estados oncreate(bundle) Se invoca cuando la Actividad se arranca por primera vez. Se utiliza para tareas de inicialización como crear la interfaz de usuario de la Actividad. Su parámetro es null o información de estado guardada previamente por onsaveinstancestate() onstart() Se invoca cuando la Actividad va a ser mostrada al usuario onresume() Se invoca cuando la actividad va a empezar a interactuar con el usuario onpause() Se invoca cuando la actividad va a pasar al fondo porque otra actividad ha sido lanzada para ponerse delante. Se utiliza para guardar el estado de la Actividad

Ciclo de Vida [2] Métodos de transición de estados onstop() Se invoca cuando la actividad va a dejar de ser visible y no se necesitará durante un tiempo. Si hay escasez de recursos en el sistema, este método podría no llegar a ser invocado y la actividad ser destruida directamente onrestart() Se invoca cuando una actividad parada pasa a estar activa ondestory() Se invoca cuando la Actividad va a ser destruida. Si hay escasez de recursos en el sistema, este método podría no Llegar a ser invocado y la actividad ser destruida directamente.

Ciclo de Vida [3]

Intenciones (Intent) [0] Representan la intención o solicitud de que alguno de los componentes lleve a cabo una tarea Las intenciones ofrecen un servicio de paso de mensajes que permite interconectar componentes de la misma o de distintas aplicaciones Las intenciones se utilizan para: Arrancar actividades Enviar eventos a múltiples destinatarios Hay dos formas de invocar a una intención: explícita, implícita Invocación explícita: Se expecifica explícitamente en código que componente es el encargado de manejar la intención. Invocación implícita: Es la plataforma la que determina, a través de un proceso de resolución de intenciones, que componente es el más apropiado para manerjar la intención. Un componente declara su capacidad para atender a una intención mediante el tag <intent-filter> en el archivo AndroidManifest.xml

Una actividad también se puede lanzar para que devuelva un resultado mediante el método startactivityforresult Cuando termina esta subactividad se llama al método onactivityresult de la actividad padre desde la que fue arrancada Intenciones (Intent) [1] Las intenciones se pueden usar para moverse entre actividades La intención puede ser explícita indicando la actividad destino o implícita especificando una acción y unos datos y dejando que se encuentre la actividad adecuada en tiempo de ejecución Lanzar una actividad de manera explícita Intent intent = new Intent(Context, Activity.class); startactivity(intent); Lanzar una actividad de manera implícita Intent intent = new Intent(Intent.ACTION_DIAL, URI.parse(tel:...)); startactivity(intent);