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



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


Tema 2: Introducción a Android

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

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

Índice. Herramientas de desarrollo. Historia Qué es Android? Arquitectura del sistema. Componentes Android Modelos de Negocio

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

TEMA 1. Introducción

Capitulo 2 Android SDK

Desarrollo de apps para móviles Android. Entorno de desarrollo

Capitulo 1: Plataforma Android

Programación Android Completo

Entorno de desarrollo Instalación y configuración

Anexo IV Configuración del Entorno de Desarrollo. Guía de puntos de interés de la Ciudad de Madrid

Programación en Android LSUB, GSYC, URJC

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

Instalación del entorno de desarrollo

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

Cursos de orientación profesional

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

Curso de Android con Java

INTRODUCCIÓN.

Presentación y objetivos

Guía de instalación del software de la asignatura

1.1. Instalación del entorno de desarrollo

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

1. El entorno de desarrollo Eclipse

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

INTRODUCCIÓN A ANDROID

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

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 NetBeans y XAMPP

Desarrollando con android sin conexión

Unidad II. Interfaz Grafica

Instalación De ANDROID STUDIO

Capitulo 4: Componentes Android

Cookbook Creando un Proyecto Android (ADT-Eclipse)

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


Abril WebApp STR- a3erp. Aplicación de registro de pedidos, albaranes y facturas para a3erp. Compatible con las principales plataformas

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

Android 4 Principios del desarrollo de aplicaciones Java

CAPÍTULO 3 VISUAL BASIC

Propuesta ANDROID ATC

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

Introducción al desarrollo para plataformas móviles con Phonegap

Servicio de VPN de la Universidad de Salamanca

Instalación del Software Magaya

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

Capacitación Android Básico

Sistemas Operativos INTRODUCCIÓN A LAS TECNOLOGÍAS INFORMÁTICAS

Material Actividad de aprendizaje 1. Primeros Pasos con App Inventor

INSTALACIÓ N A3ERP. Informática para empresas INTRODUCCIÓN CONSIDERACIONES GENERALES DE LA INSTALACIÓN PAQUETES DE INSTALACIÓN PREDEFINIDOS

Android Professional

Curso de Desarrollo en Android Básico

online Programación para dispositivos Android 4.x

Descripción. Este Software cumple los siguientes hitos:

Introducción a Gestión de Proyectos. Beneficios del Sistema. Arquitectura y Diseño del Aplicativo. Requerimientos del Sistema.

Anexo A Diagramas de Navegación

AVD, el emulador de Smartphone y Tablets Android que incluye el SDK de Google

Ejecutar el instalador y seleccionar los paquetes necesarios. En nuestro caso son los siguientes: Android SDK Tools (ya vendrá instalado) Android SDK

Sistema de SaaS (Software as a Service) para centros educativos

Se trata de una herramienta de desarrollo visual muy fácil de usar, con la que incluso los no programadores podrán desarrollar sus aplicaciones.

Visión general y entorno de desarrollo

Puesta en producción de aplicaciones móviles con GeneXus

App Android: Desarrollo de aplicaciones en Android.

SOBRE EL USO DE LA APLICACIÓN

INSTALACIÓN A3ERP INTRODUCCIÓN CONSIDERACIONES GENERALES DE LA INSTALACIÓN PAQUETES DE INSTALACIÓN PREDEFINIDOS

MODELO DE IMPLEMENTACIÓN

UNIVERSIDAD TECNOLÓGICA DE LA MIXTECA A N D R O I D

GUÍA TÉCNICA. Desarrollo de Sistemas de Información la plataforma Business Intellingence Pentaho

ANDROID BÁSICO - E-LEARNING - EN LÍNEA

Tutorial: Instalación de Eclipse para programar Android en Windows

Prototipado y ejecución de aplicaciones SD con GeneXus

Programación Android. Alejandro Alcalde. elbauldelprogramador.com

MANUAL DE USUARIO. Introducción

Guía rápida del usuario. Disco duro virtual.

Procedimiento de arranque de Aula Virtual Santillana: alumnos

Descarga, instalación y uso de herramientas:

Así de fácil. Cortar, descargar y convertir vídeos o sonidos. Controles avanzados del reproductor multimedia VLC

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

Marcos de Desarrollo. Diseño e implementación de aplicaciones Web con.net

TEMA 3: SISTEMAS OPERATIVOS.

Crear una Activity en Android. Paso por paso

TOMO II. Línea de Investigación. Redes y Sistema Operativo. Nombre del egresado. Antonio Nicolás Rodríguez Andrade.

Escudo Movistar Guía Rápida de Instalación Dispositivos Symbian

Configuración de PDAs en ITACTIL.

Introducción al sistema operativo para dispositivos móviles Android

COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX

CONFIGURACIÓN DE SOFTPHONES

SAP BusinessObjects Edge BI Standard Package La solución de BI preferida para. Empresas en Crecimiento

Índice. Prólogo Capítulo I. Introducción Capítulo II. Conceptos...19

Guía básica para subir vídeos a Youtube

Instalación del sistema operativo Microsoft Windows Server 2008 Standard Edition x86

Transcripción:

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

A. Conocer los orígenes y características más significativas de Android. B. Requerimientos mínimos del terminar para ejecutar Android. C. Conocer las diferentes versiones de Android. D. Conocer la información disponible de Android. Versión adaptada a partir del trabajo de Tomás Cobo Martínez e Israel Choque Gutiérrez para la asignatura de la titulación de Ingeniería de Telecomunicación, curso 2010/2011 2

1. Introducción a Android 1. Breve historia 2. Características 3. Plataformas 4. Arquitectura 5. Herramientas necesarias 6. Fuentes de información disponibles 2. Introducción a la programación en Android 1. Inicio con Android 2. Configuraciones: Crear un AVD 3. Crear HolaMundo 4. Tipos de aplicaciones Android 3

1. Breve historia 2. Características 3. Plataformas 4. Arquitectura 5. Herramientas necesarias 6. Fuentes de información disponibles 4

1. Breve historia Android es un sistema operativo desarrollado por Android Inc. basado en una versión modificada del kernel de Linux, busca la abstracción al HW. Google compra el SO Android a Android Inc. Noviembre de 2007: primera SDK de Android. Diciembre de 2007: depuración de errores de la SDK. Agosto de 2008: anuncio de Android Market. Octubre de 2008: lanzamiento del primer móvil Android del mercado. febrero de 2009: lanzamiento de la versión 1.1 de Android. Abril de 2009: lanzamiento de la versión 1.5 de Android (Cupcake). Septiembre de 2009: lanzamiento de la versión 1.6 de Android (Donut). 5

Noviembre de 2009: lanzamiento de la versión 2.0/2.1 de Android (Éclair). Junio de 2010: lanzamiento de la versión 2.2 de Android (Froyo). Diciembre de 2010: lanzamiento de la SDK versión 2.3 de Android y lanzamiento de los primeros móviles (Gingebread). 2.3.3, Revision 2 (Julio 2011) Android 3.0 (Febrero 2011) API Level: 11 Android 3.1 (Mayo 2011) API Level: 12 Android 3.2 (Julio 2011) API Level: 13 Android 4.0 (Octubre 2011) API Level: 14 Android 4.0.3 (Marzo 2012) API Level: 15 Android 4.1. JELLY_BEAN (Julio 2012) API Level: 16 Android 4.2. (JELLY_BEAN_MR1) Level: 17 Android 4.3. (JELLY_BEAN_MR2) Level: 18 Logo de Android 4.0 (Ice Cream Sandwich!) Logo de Android 4.1 (Jelly bean) 6

67

In Q2 2011, Android overtook ios to become the market share leader in mobile application downloads. The market shares of Android and ios were 44% and 31%, respectively. Android Overtakes Apple with 44% Worldwide Share of Mobile App Downloads (SINGAPORE - October 24, 2011) Fuente: ABI Research(http://www.abiresearch.com) 2011 Allied Business Intelligence, Inc. 68

2. Características La mayoría del código de Android es libre y abierto. Máquina virtual Dalvik optimizada para dispositivos móviles. Programas escritos en Java, lo que permite la reutilización de aplicaciones ya programadas para otras plataformas. 9

2. Características Navegador web integrado basado en el motor WebKit de código libre. Gráficos optimizados: 2D con implementación propia y 3D con OpenGL ES 1.0 (aceleración por hardware opcional). Soporte multimedia para los formatos más comunes de audio, video e imagen : MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF. Almacenamiento de datos estructurados a través de SQLite. 10

2. Características Comunicaciones: Telefonía GSM, Bluetooth, EDGE, 3G y Wifi, WifiDirect, Near Field Communication. Soporte para otros dispositivos: Cámara, GPS, brújula, acelerómetro, pantallas táctiles. Aplicaciones en Android Market, donde los desarrolladores pueden subir las aplicaciones. Actualmente Android Market ha sido incorporado a Google Play, donde no sólo se distribuyen aplicaciones sino Dispositivos, Libros, Música y vídeos. 11

3. Plataformas Conexión usuario-desarrollador: las plataformas Android están asociadas a un nivel API. Nivel de API: Es el nivel de compatibilidad de la aplicación. Siendo normalmente compatible con niveles anteriores. Existe un método de proporcionar compatibilidad hacia atrás de nuevas características como los fragmentos a través de la biblioteca de funciones de apoyo: Support Library (soportada desde el API level 4). 12

Versión de la plataforma API Level Versión de la plataforma API Level Android 4.3 18 Android 2.3.3, Android 2.3.4 10 Android 4.2 17 Android 2.3, Android 2.3.1, Android 2.3.2 9 Android 4.1 16 Android 2.2.x 8 Android 4.0.3 15 Android 2.1.x 7 Android 4.0 14 Android 2.0.1 6 Android 3.2 13 Android 2.0 5 Android 3.1.x 12 Android 1.6 4 Android 3.0.x 11 Android 1.5 3 Android 1.1 2 Android 1.0 1 13

4. Arquitectura Los componentes del SO Android: Basado en la versión 2.6 del kernel de Linux Conjunto de librerías de que usa el SO. Runtime: Cada aplicación se ejecuta en su propio proceso, una instancia de la maquina virtual Dalvik. Framework: Acceso completo a la API usada por las aplicaciones base. Permite reutilización de capacidades y componentes publicados. Aplicaciones: Escritas en Java. Algunas incluidas. Otras disponibles en Android Market (Google Play). 14

15

4. Arquitectura. Framework Los desarrolladores tienen acceso completo a las mismas APIs usadas por las aplicaciones del núcleo. La arquitectura de aplicación está diseñada para simplificar el reusado de componentes. Cualquier aplicación puede publicar sus capacidades, y otras aplicaciones pueden usarlas (sujetas a las medidas de seguridad del framework). Este mecanismo también permite que otros componentes sean reemplazados por el usuario. 16

4. Arquitectura. Framework Por debajo de todas las aplicaciones existen un conjunto de servicios y sistemas, entre los que se incluyen: Un rico y extensible conjuntos de vistas, incluyendo listas, rejillas, cajas de texto, botones, e incluso un navegador web embebible. Content Providers que permiten publicar datos para que otras aplicaciones accedan a ellos. Un Resource Manager, que proporciona acceso a recursos fuera del código como cadenas, imágenes, etc. Un Notification Manager que permite enviar alertas a la barra de estado Un Activity Manager que maneja el ciclo de vida de las aplicaciones y provee un pila de llamadas común para la navegación entre aplicaciones (backstack). 17

5. Herramientas necesarias La forma más sencilla de desarrollar herramientas para Android es usando la SDK de Android junto con Eclipse ya sea en Windows, Mac OS, o Linux. La SDK tiene los siguientes componentes (entre otros): SDK Tools (<sdk>/tools): Contiene las herramientas necesarias para la depuración y prueba, además de otras utilidades necesarias para desarrollar aplicaciones. La más útil y común es la utilidad abd (Android Debug Bridge). SDK Platform (<sdk>/platforms/<android-version>): Archivos android.jar para construir la aplicación Android para cada versión disponible. Documentación (<sdk>/docs>: Es una copia offline de la última versión de la documentación del API (JavaDocs). Proyectos de ejemplo (<sdk>/platforms/<androidversion>/samples: Código fuente de proyectos de ejemplo (ejemplo: ApiDemo), interesantes para empezar. usb-drivers: Directorio necesario para conectar el entorno de desarrollo con el dispositivo Android. 18

5. Herramientas necesarias También es necesario para compilar y ejecutar la Máquina Virtual: Dalvik VM. Una vez compilada la aplicación, la Android Developer Tools permiten la aplicación en un paquete incluido en el archivo: androidmanifest.xml SDK Manager: Permite mantener actualizada la SDK, así como gestionar los paquetes que nos interesan. AVD Manager: Crea y mantiene los dispositivos virtuales Android (AVDs) 19

6. Fuentes de información disponibles Android es una plataforma de reciente creación pero de constante y rápido desarrollo. Por tanto, las fuente de información disponibles son crecientes y cambiantes día a día. Páginas soportadas/propiedad de Google: o Página principal de desarrollo de Android: http://developer.android.com/index.html o Página oficial de Android: http://www.android.com/ o Android Source Project: http://source.android.com/index.html o Google projects for Android: para añadir funciones a la SDK como Google Maps, http://code.google.com/intl/es-es/android/ 20

6. Fuentes de información disponibles Otras páginas de la comunidad Android son: o Android Developers: http://androiddevelopers.blogspot.com/index.html o Introduction to Android Development: http://www.ibm.com/developerworks/opensource/li brary/os-android-devel/ o Android Wiki: http://en.androidwiki.com/wiki/main_page o Android SO: http://en.wikipedia.org/wiki/android_(operating_syst em) Página de Lars Vogel: http://www.vogella.com 21

1. Inicio con Android 2. Configuraciones: Crear un AVD 3. Crear HolaMundo 4. Tipos de aplicaciones Android 22

1. Inicio con Android Requisitos de desarrollo: Entorno de programación (recomendado Eclipse) Plugin de Android Framework de Android Requisitos hardware para instalar Android(ejemplo Android 3.0 Gingerbread ): Un procesador con una velocidad de 1Ghz 512 Mb de RAM una pantalla mínima de 3,5 pulgadas de dimensión. Se incluirán nuevas resoluciones en el sistema operativo como la de 1280 760 pixeles para pantallas de 4 pulgadas o superiores 23

1. Inicio con Android Ejemplo de instalación del SDK de Android: Descargar de la pagina http://www.eclipse.org/downloads/ la versión Eclipse IDE for Java Developers. Descargar e instalar el SDK de Android de http://developer.android.com/sdk/index.html Tener Java instalado en el ordenador, si no descargarlo en http://java.sun.com/javase/downloads/index.jsp Instalar el plugin de Android Ir al menu Help/Install new Software - Add site y añadir la siguiente dirección: https://dl-ssl.google.com/android/eclipse/ Una vez añadida la url, seleccionar Developer Tools, a continuación instalar, reiniciar Eclipse para aplicar los cambios. 24

2. Crear un AVD Para crear un AVD: En eclipse, seleccionar Window > Android SDK and AVD Manager Seleccionar Virtual Devices en el panel izquierdo Click en New AVD Introducir el nombre de un AVD como "mi_avd" Seleccionar una plataforma (la version del SDK de Android como 2.1). Click en create AVD 25

3. Crear un proyecto HolaMundo En eclipse seleccionar File>New> Project seleccionar "Android Project" y Next Rellenar los campos con el nombre del proyecto, en este caso HelloAndroid Nombre de aplicación: Hello, Android Nombre del paquete: com.example.helloandroid Build Target: (Escoger una plataforma, por ejemplo 2.3) 26

3. Crear un proyecto HolaMundo Ante nosotros debería aparecer un código como el siguiente: package com.example.helloandroid; import android.app.activity; import android.os.bundle; public class HelloAndroid extends Activity { /** Called when the activity is first created.*/ @Override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); } } 27

3. Crear un proyecto HolaMundo El programa por defecto está basado en la clase Activity que se usa para ejecutar acciones, pero el usuario solo interactúa con una a la vez. El método oncreate es llamado por el sistema Android cuando la aplicación empieza. 28

3. Crear un proyecto HolaMundo Añadiendo las siguientes líneas en negrita usaremos añadiremos un campo de texto: package com.example.helloandroid; import android.app.activity; import android.os.bundle; import android.widget.textview; public class HelloAndroid extends Activity { /** Called when the activity is first created.*/ @Override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); TextView tv = new TextView(this); tv.settext("hello, Android"); setcontentview(tv); } } 29

3. Crear un proyecto HolaMundo Una interfaz de usuario de Android está compuesta de jerarquías de objetos llamados Views. Cada uno de estos objetos es una subclase de la clase View. Para texto se usaría TextView. Un contexto es una llamada al sistema que provee servicios como resolución de fuentes, obtención de acceso a base de datos y preferencias (settext establece el contexto). ViewGroup ViewGroup View View View View View 30

3. Crear un proyecto HolaMundo seleccionar Run > Run seleccionar Application" "Android El plugin de Eclipse crea automáticamente una nueva configuración de ejecución haciendo uso a continuación del emulador de Android (puede tardar varios minutos en iniciar). Emulador de terminal (versiones 2.x) 31

4. Tipos de aplicaciones Las aplicaciones Android se clasifican en: Activities: Aplicaciones con interfaz gráfica Services: Aplica el mismo concepto de los demonios de Linux Content providers: El administrador de información persistente Servidor de base de datos, basado en SQLite. Broadcast receivers: Aplicaciones que responden a determinados eventos 32