Lista de acrónimos... 15



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

Presentación del curso MOOC Android: Programación de aplicaciones. Jesús Tomás Gandía 1 de febrerro de 2013

Presentación y objetivos

Programación Android Completo

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

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

APLICACIÓN PARA DISPOSITIVOS MÓVILES DESTINADA A USUARIOS DEL PARQUE NATURAL DE LA SIERRA DE COLLSEROLA

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

online Programación para dispositivos Android 4.x

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

Android Professional

Programación para Android

Entorno de desarrollo Instalación y configuración

Tema 2: Introducción a Android

Android 4 Principios del desarrollo de aplicaciones Java

Android 5 Principios del desarrollo de aplicaciones Java

[PROGRAMACIÓN ANDROID] Programación Android. Dv-Alpha Solutions TIC S.L. Carlos Acevedo. Curso de desarrollo de aplicaciones para dispositivos Android

* Introducción al mundo móvil. Qué es Android. Instalación y primeros pasos con Android.

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

Online Itinerario Desarrollo móvil con Android 4.x y HTML 5

Objetivos y Temario CURSO DESARROLLO APLICACIONES ANDROID 4.0

Capitulo 1: Plataforma Android

Guía del Curso Analista Programador Android: Business Android Apps Expert

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

1 de Mayo 2015 al 1 de Mayo 2016 Capacitación Android nivel Básico y Experto MexicoFirst


Introducción a Internet

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

1.1. Instalación del entorno de desarrollo

INTRODUCCIÓN.

Desarrollo y servicios web

2524 Developing XML Web Services Using Microsoft ASP.NET

CURSO INTERMEDIO DE PROGRAMACIÓN EN ANDROID

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

Curso de Desarrollo en Android Experto

PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN

Programación Multimedia y dispositivos móviles.

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.

TEMA 1. Introducción

Tema 1. Introducción a JAVA

Indice Dominio y Hosting... 1 Dominio y Hosting fácil de entender con una imagen... 3 Cómo funciona el dominio y hosting?... 4 Términos más usados en

Curso de Android con Java

EXPERTO EN DESARROLLO DE APLICACIONES PARA DISPOSITIVOS MÓVILES

TEMA 5. Otras arquitecturas distribuidas IV. Web Services

Reflexión. Inicio. Contenido

Instalación del entorno de desarrollo

PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN

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

Cursos El cerdito feliz. Programación de dispositivos Móviles con Android.

Educomputacion te ofrece el curso

Servicios Web Ubicuos Activados por Voz

Cookbook Creando un Proyecto Android (ADT-Eclipse)

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

Desarrollo de Aplicaciones móviles para Android y IOS


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

PROTOCOLOS DE APLICACIÓN PRÁCTICA EN INFOMED INTEROPERABILIDAD

Servicios Web. Andrés Pastorini. TRIA Tecnólogo Informático

Interacción multimodal

DESARROLLO WEB EN ENTORNO CLIENTE

1. Como empezar 1.1. Arquitectura Android 1.2. Dalvik VM 1.3. Componentes de Android 1.4. Entorno de Desarrollo Android 1.5. Una Aplicación sencilla

TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB

PROGRAMACIÓN DE SMARTPHONE MEDIANTE ANDROID

PREPARATORIA DIURNA DE CUAUTLA

Desarrollo de Aplicaciones Móviles con PhoneGap 5.0 (Apache Cordova), Android y Eclipse

Introducción a la Web 2.0

Arquitecturas Distribuidas. Eduardo Ostertag Jenkins, Ph.D. OBCOM INGENIERIA S.A.

Curso Superior Android 4.4 Kitkat + Mobile Market

CREIX AMB INTERNET. Desarrollo Aplicaciones para la plataforma Facebook

Capítulo 7. Implementación del Sistema

DESARROLLO DE UN CLIENTE SOFIA2 (KP) SIGUIENDO ARQUITECTURA KP-MODELO

SISTEMAS DE INFORMACIÓN III TEORÍA

MANUAL DE USUARIO Guía de Entregas con Subversion de proyectos de movilidad

Programación de red con Cisco Application Centric Infrastructure

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

PROGRAMACIÓN DE APLICACIONES PARA ANDROID. 30 horas 45 días

Capacitación Android Básico

Desarrollando con android sin conexión

Propuesta ANDROID ATC

Lista de acrónimos... xv. Cómo leer este libro?... xvii

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

Guía de Instalación de la JDK y del Eclipse

Desarrollo y programación de aplicaciones para Android

ACTIVIDAD DE APRENDIZAJE 01 CONCEPTOS PRELIMINARES

GLOSARIO DE TÉRMINOS

5.1. Qué es Internet? controla todo el sistema, pero está conectado de tal manera que hace

Como configurar Firewall (Kaspersky)

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

Transcripción:

Índice general Lista de acrónimos... 15 CAPÍTULO 1. Visión general y entorno de desarrollo... 17 1.1. Qué hace Android especial?... 18 1.2. Los orígenes... 19 1.3. Comparativa con otras plataformas... 19 1.4. Arquitectura de Android... 22 1.4.1. El núcleo Linux... 22 1.4.2. Runtime de Android... 23 1.4.3. Librerías nativas... 23 1.4.4. Entorno de aplicación... 24 1.4.5. Aplicaciones... 24 1.5. Instalación del entorno de desarrollo... 24 1.5.1. Instalación de la máquina virtual Java... 25 1.5.2. Instalación de Eclipse... 25 1.5.3. Instalar Android SDK de Google... 26 1.5.4. Instalación del plug-in Android para Eclipse (ADT)... 31 1.6. Creación de un primer programa... 33 1.6.1. Las plataformas de desarrollo... 33 1.6.1.1. Android 1.0 Nivel de API 1 (septiembre 2008)... 34 1.6.1.2. Android 1.1 Nivel de API 2 (febrero 2009)... 34 1.6.1.3. Android 1.5 Nivel de API 3 (abril 2009, Cupcake)... 34 1.6.1.4. Android 1.6 Nivel de API 4 (diciembre 2009, Donut)... 34 1.6.1.5. Android 2.0 Nivel de API 5 (octubre 2009, Éclair)... 34 1.6.1.6. Android 2.1 Nivel de API 7 (enero 2010, Éclair)... 35 1.6.1.7. Android 2.2 Nivel de API 8 (mayo 2010, Froyo)... 35 1.6.1.8. Android 2.3 Nivel de API 9 (diciembre 2010, Gingerbread)... 36 1.6.1.9. Android 3.0 Nivel de API 11 (febrero 2011, Honeycomb)... 36 1.6.2. Elección de la plataforma de desarrollo... 37 1.6.3. Creación del proyecto... 39 7

El gran libro de Android 1.7. Ejecución del programa... 42 1.7.1. Ejecución en el emulador... 42 1.7.2. Ejecución en un terminal... 43 1.8. Elementos de un proyecto Android... 45 1.9. Aspectos clave en Android... 47 1.9.1. Vista (View)... 47 1.9.2. Actividad (Activity)... 47 1.9.3. Intento (Intent)... 47 1.9.4. Servicio (Service)... 47 1.9.5. Proveedores de Contenido (Content Provider)... 47 1.10. Documentación y ApiDemos... 48 1.10.1. Donde encontrar documentación... 48 1.10.2. La aplicación ApiDemos... 48 CAPÍTULO 2. Diseño de la interfaz de usuario... 51 2.1. Creación de una interfaz de usuario por código... 51 2.2. Creación de una interfaz de usuario usando XML... 52 2.2.1. Edición visual de las vistas... 55 2.2.2. Layouts... 56 2.3. Una aplicación de ejemplo: Asteroides... 61 2.3.1. Usando recursos alternativos... 63 2.4. Implementación de una caja Acerca de... 68 2.4.1. Aplicando un tema... 71 2.5. Añadiendo un menú... 72 2.5.1. Los estilos... 74 2.5.2. Aplicando temas... 75 2.6. Añadiendo preferencias... 75 2.6.1. Organizando preferencias... 78 2.6.2. Como se almacenan los valores de las preferencias... 79 2.6.3. Accediendo a los valores de las preferencias... 80 2.7. Depurar... 81 2.7.1. Depurar con Eclipse... 81 8

Índice 2.7.2. Depurar con mensajes Log... 82 CAPÍTULO 3. Gráficos en Android... 85 3.1. Elementos gráficos... 85 3.1.1. Canvas... 85 3.1.2. Paint... 88 3.1.2.1. Definición de colores... 88 3.1.3. Path... 89 3.1.4. Drawable... 91 3.1.4.1. BitmapDrawable... 92 3.1.4.2. GradienDrawable... 94 3.1.4.3. TransitionDrawable... 94 3.1.4.4. ShapeDrawable... 95 3.1.4.5. AnimationDrawable... 96 3.2. Creando la actividad principal de Asteroides... 97 3.2.1. La clase gráfico... 98 3.3. Representación de gráficos vectoriales en Asteroides... 104 3.4. Introduciendo el movimiento en Asteroides... 105 CAPÍTULO 4. Entradas en Android: teclado, pantalla táctil y sensores... 107 4.1. Manejando eventos de usuario... 107 4.1.1. Escuchador de eventos... 108 4.1.2. Manejadores de eventos... 109 4.2. El teclado... 110 4.3. La pantalla táctil... 111 4.4. Gestures... 113 4.4.1. Creación de una librería de gestures... 114 4.4.2. Añadiendo la librería de gestures a nuestra aplicación... 116 4.4.3. Añadiendo gestures a Asteroides... 119 4.5. Los sensores... 120 4.5.1. Listar los sensores del dispositivo... 122 4.5.2. Acceso a los datos del sensor... 123 4.5.2.1. Obtención de datos de los sensores... 124 9

El gran libro de Android 4.5.3. Utilización de los sensores en Asteroides... 127 4.6. Introduciendo un misil en Asteroides... 128 CAPÍTULO 5. Multimedia y ciclo de vida de una aplicación... 131 5.1. Ciclo de vida de una aplicación... 131 5.1.1. Qué proceso se elimina?... 134 5.1.2. Aplicando eventos del ciclo de vida en Asteroides... 135 5.1.3. Guardando el estado de una actividad... 136 5.2. Utilizando multimedia en Android... 138 5.3. Reproducir un vídeo con VideoView... 140 5.4. La clase MediaPlayer... 142 5.4.1. Reproducción de audio de fondo incorporado como un recurso... 143 5.5. Un reproductor multimedia pasó a paso... 145 CAPÍTULO 6. Seguridad y posicionamiento... 153 6.1. Seguridad en Android... 153 6.1.1. Usuario Linux y acceso a ficheros... 154 6.1.2. El esquema de permisos en Android... 155 6.1.2.1. Creando tus propios permisos... 157 6.2. Localización... 161 6.2.1. Emulación del GPS con Eclipse... 167 6.3. Google Maps... 168 6.3.1. Obtención de una clave Google Maps... 168 6.3.2. Un programa de ejemplo... 170 6.4. Fragmentando los asteroides... 175 CAPÍTULO 7. Almacenamiento de datos... 177 7.1. Añadiendo lista de puntuaciones en Android... 178 7.2. Comunicación entre actividades... 181 7.3. Accediendo a ficheros... 183 7.3.1. Sistema interno de ficheros... 183 7.3.2. Almacenando puntuaciones en el sistema de ficheros interno... 184 7.3.3. La tarjeta SD... 185 10

Índice 7.3.4. Acceder a un fichero de los recursos... 186 7.4. Trabajando con XML... 186 7.4.1. Procesando XML con SAX... 187 7.4.2. Procesando XML con DOM... 194 7.5. Bases de datos... 199 7.5.1. Utilizando una base de datos para guardar puntuaciones... 199 7.6. Utilizando la clase ContentProvider... 201 7.6.1. Conceptos básicos... 202 7.6.1.1. El modelo de datos... 202 7.6.1.2. Las URI... 202 7.6.2. Acceder a la información de un ContentProvider... 203 7.6.2.1. Leer información de un ContentProvider... 204 7.6.2.2. Escribir información en un ContentProvider... 208 7.6.2.3. Borrar y modificar elementos de un ContentProvider... 209 7.6.3. Creación de un ContentProvider... 210 7.6.3.1. Definir la estructura de almacenamiento del ContentProvider210 7.6.3.2. Extendiendo la clase ContentProvider... 211 7.6.3.3. Declarar el ContentProvider en AndroidManifest.xml... 216 7.6.4. Acceso a PuntuacionesProvider desde Asteroides... 218 CAPÍTULO 8. Internet: sockets, HTTP y servicios web... 221 8.1. Comunicaciones en Internet mediante sockets... 221 8.1.1. La arquitectura cliente/servidor... 222 8.1.2. Qué es un socket?... 222 8.1.2.1. Sockets stream (TCP)... 223 8.1.2.2. Sockets datagram (UDP)... 223 8.1.3. Un ejemplo de un cliente / servidor de ECHO... 223 8.1.4. Almacenando las puntuaciones en un servidor por sockets... 226 8.2. La web y el protocolo HTTP... 229 8.2.1. El protocolo HTTP... 229 8.2.1.1. Versión 1.0 de HTTP... 230 8.2.1.2. Versión 1.1 de HTTP... 232 11

El gran libro de Android 8.2.2. Utilizando HTTP desde Android... 232 8.3. Servicios web... 238 8.3.1. Alternativas en los servicios web... 238 8.3.1.1. Servicios web basados en SOAP... 239 8.3.1.2. Servicios web basados en REST... 240 8.3.2. Acceso a servicios web de terceros... 241 8.3.3. Diseño e implantación de nuestro servicios web... 243 8.3.3.1. Instalación del servidor de servicios web... 244 8.3.3.2. Creación un servicio web en Eclipse... 246 8.3.3.3. Explorando el servicio web desde Eclipse... 250 8.3.3.4. Explorando el servicio web desde HTML... 255 8.3.3.5. Utilizando el servicio web desde Android... 257 CAPÍTULO 9. Servicios y notificaciones... 263 9.1. Introducción a los servicios en Android... 263 9.1.1. Ciclo de vida de un servicio.... 264 9.1.2. Permisos... 266 9.2. Un servicio para ejecución en segundo plano.... 267 9.3. Las notificaciones de la barra de estado... 271 9.3.1. Configurando tipos de avisos en las notificaciones... 273 9.3.1.1. Asociar un sonido... 274 9.3.1.2. Añadiendo vibración... 274 9.3.1.3. Añadiendo parpadeo de LED... 274 9.4. Un servicio como mecanismo de comunicación entre aplicaciones... 275 9.4.1. Crear la interfaz en AIDL... 276 9.4.2. Implementar la interfaz... 277 9.4.3. Publicar la interfaz en un servicio... 278 9.4.4. Llamar a una interfaz remoto... 279 CAPÍTULO 10. Gráficos 3D con OpenGL... 283 10.1. Introducción a OpenGL... 283 10.1.1. OpenGL ES... 284 12

Índice 10.2. Estructura del código en OpenGL... 285 10.3. Primitivas en OpenGL ES... 291 10.4. Añadiendo un array de colores... 293 10.5. Representando un cubo... 295 10.6. Transformaciones de coordenadas... 297 10.6.1. Transformando el modelo... 298 10.6.2. Definiendo el punto de vista... 300 10.6.3. Manipulando las matrices de transformación... 303 10.6.4. La proyección... 305 10.6.5. Ejemplo: rotación usando la pantalla táctil... 309 10.7. Iluminación... 310 10.7.1. Vectores normales... 310 10.7.2. Situando las luces... 314 10.7.3. Definiendo materiales... 315 10.8. Aplicando texturas... 316 10.8.1. Mapeando texturas... 318 10.8.2. Cargando y configurando texturas... 322 10.8.3. Cambiando los parámetros de cada superficie... 323 CAPÍTULO 11. Publicar aplicaciones... 325 11.1. Preparar y testear tu aplicación... 325 11.1.1. Preparar la aplicación para cualquier tipo de dispositivo... 325 11.1.2. Testear la aplicación... 328 11.2. Crear un certificado digital y firmar la aplicación... 328 11.3. Publicar la aplicación... 332 11.3.1. Publicar en Internet... 332 11.3.2. Publicar en Android Market... 332 11.4. Asteroides: detectar victoria y derrota... 338 13

Lista de acrónimos AIDL API AVD DOM DTD FTP GPS HTTP JDK JRE JSON JVM MIME NDK OpenGL PCM RAM REST RPC SAX SDK SMS SOA SOAP SQL TCP UI URL Android Interface Definition Language Application Programming Interface Android Virtual Device Modelo de Objetos del Documento Document Type Definition File Transfer Protocol Global Positioning System Hypertext Transfer Protocol Java Development Kit Java Runtime Environment JavaScript Object Notation Java Virtual Machine Multipurpose Internet Mail Extensions Native Development Kit Open Graphic Library Pulse-Code Modulation Random Access Memory REpresentational State Transfer Remote Procedure Calls Simple API for XML Software Developers Kit Short Message Service Service-Oriented Architecture Simple Object Access Protocol Structured Query Language Transmission Control Protocol User Interface Universal Resource Locator 15

El gran libro de Android URI USB W3C WSDL WWW XML Uniform Resource Identifier Universal Serial Bus World Wide Web Consortium Web Services Description Language World Wide Web Extensible Markup Language 16