Detalle del libro
Ver Índice
Agradecimientos
Prefacio
Introducción
El público
Estructura
Parte I: Fundamentos
Parte II: El entorno de programación
Parte III: Combinar todas las piezas
Parte IV: La evolución de la plataforma
Parte V: Apéndices
Convenciones
Código fuente
Requisitos de software
Sobre la ilustración de la cubierta
Parte I. ¿Qué es Android? Una visión panorámica
1. Introducción a Android
1.1. La plataforma Android
1.2. El mercado de Android
1.2.1. Operadores móviles
1.2.2. Android frente a teléfonos tradicionales
1.2.3. Android y teléfonos inteligentes
1.2.4. Android frente a Android
1.2.5. Licencias de Android
1.3. Componentes de Android
1.3.1. El núcleo de Linux
1.3.2. La máquina virtual Dalvik
1.4. Iniciar el desarrollo de Android. La clase Intent
1.4.1. El fundamento de las interfaces de usuario intuitivas
1.4.2. Qué son los Intent y cómo funcionan
1.5. Cuatro tipos de componentes de Android
1.5.1. Activity
1.5.2. Service
1.5.3. BroadcastReceiver
1.5.4. ContentProvider
1.6. El archivo AndroidManifest.xml
1.7. Asignar aplicaciones a procesos
1.8. Cómo crear nuestra primera aplicación Android
1.9. Resumen
2. El entorno de desarrollo Android
2.1. El SDK de Android
2.1.1. Paquetes básicos de Android
2.1.2. Paquetes opcionales
2.2. El entorno de desarrollo
2.2.1. Perspectiva Java
2.2.2. Perspectiva DDMS
2.2.3. Herramientas de línea de comandos
Herramienta de compresión de activos de Android
Debug Bridge
Telnet
2.3. Desarrollo de una aplicación Android en Eclipse
2.3.1. El asistente para proyectos de Android
2.3.2. Código fuente de la aplicación de Android
2.3.3. Cómo generar el paquete de la aplicación
2.4. El emulador de Android
2.4.1. Configuración del emulador
Gestión de dispositivos virtuales AVDS
Cómo crear una configuración de ejecución
2.4.2. Prueba de la aplicación en el emulador
2.5. Cómo depurar nuestra aplicación
2.6. Resumen
Parte II. El SDK de Android
3. Interfaces de usuario
3.1. Crear la actividad
3.1.1. Crear una clase Activity
3.1.2. Explorar el ciclo de vida de las actividades
Relación entre procesos y actividades
Ciclo de vida de las actividades
3.2. Trabajar con vistas
3.2.1. Analizar las vistas comunes
3.2.2. Utilizar ListView
3.2.3. Multitarea con Handler y Message
3.2.4. Crear vistas personalizadas
3.2.5. Comprender el diseño
3.2.6. Enfoque
3.2.7. Eventos
3.3. Utilizar recursos
3.3.1. Tipos de recursos admitidos
3.3.2. Hacer referencia a recursos en Java
3.3.3. Definir vistas y diseños con recursos XML
3.3.4. Externalizar valores
3.3.5. Animaciones
3.4. El archivo de manifiesto
3.5. Resumen
4. Intent y Service
4.1. Trabajar con clases Intent en la aplicación RestaurantFinder
4.1.1. Cómo definir un Intent
4.1.2. Invocación implícita e invocación explícita
4.1.3. Cómo añadir vínculos externos a RestaurantFinder
4.1.4. Resolución de Intent
Acciones y categorías
Datos
4.1.5. Utilizar actividades proporcionadas por Android
4.2. Predicción meteorológica con un URI personalizado
4.2.1. Cómo ofrecer un URI personalizado
4.2.2. Inspeccionar un URI personalizado
4.3. Escuchar la información del tiempo con receptores
4.3.1. Difusión de eventos con Intent
4.3.2. Crear un receptor
4.4. Crear un servicio meteorológico en segundo Plano
4.5. Comunicar con WeatherAlertService desde otras aplicaciones
4.5.1. Lenguaje de definición de interfaces de Android
4.5.2. Binder y Parcelable
4.5.3. Mostrar una interfaz remota
4.5.4. Vincularse a un servicio
4.5.5. Iniciar frente a vincular
4.5.6. El ciclo de vida de un servicio
Ciclo de vida de un servicio iniciado
Ciclo de vida de un servicio vinculado
Ciclo de vida de un servicio iniciado y vinculado
Limpieza tras la parada de un servicio
4.6. Resumen
5. Almacenar y recuperar datos
5.1. Utilizar preferencias
5.1.1. Trabajar con SharedPreferences
5.1.2. Permisos de acceso a preferencias
5.2. Utilizar el sistema de archivos
5.2.1. Crear archivos
5.2.2. Acceder a archivos
5.2.3. Archivos como recursos sin procesar
5.2.4. Recursos de archivos XML
5.2.5. Almacenamiento externo a través de una tarjeta SD
5.3. Almacenar datos en una base de datos
5.3.1. Crear y acceder a una base de datos
5.3.2. Utilizar la herramienta sqlite3
5.4. Trabajar con clases ContentProvider
5.4.1. Cómo utilizar un ContentProvider ya existente
5.4.2. Creación de un ContentProvider
Cómo definir un CONTENT_URI y un MIME_TYPE
Cómo extender un ContentProvider
El manifiesto del proveedor
5.5. Resumen
6. Redes y servicios Web
6.1. Redes
6.1.1. Fundamentos sobre redes
Nodos
Capas y protocolos
IP
TCP y UDP
Protocolos de aplicaciones
6.1.2. Clientes y servidores
6.2. Cómo comprobar el estado de la red
6.3. Comunicarse con un socket de servidor
6.4. Trabajar con HTTP
6.4.1. HTTP y java.net
6.4.2. HTTP de calidad con HttpClient
6.4.3. Crear una clase de ayuda HTTP y HTTPS
6.5. Servicios Web
6.5.1. POX con HTTP y XML
6.5.2. REST
6.5.3. SOAP o no SOAP, esa es la cuestión
6.6. Resumen
7. Telefonía
7.1. Información y terminología básica de telefonía
7.1.1. Introducción a GSM
7.1.2. Introducción a CDMA
7.2. Acceder a información sobre telefonía
7.2.1. Recuperar propiedades de telefonía
7.2.2. Obtener información de estado del teléfono
7.3. Interactuar con el teléfono
7.3.1. Utilizar Intent para realizar llamadas
7.3.2. Utilidades relacionadas con números de teléfono
7.3.3. Interceptar llamadas salientes
7.4. Trabajar con mensajes: SMS
7.4.1. Envío de mensajes SMS
7.4.2. Recepción de mensajes SMS
7.5. Resumen
8. Notificaciones y alarmas
8.1. Presentación de Toast
8.1.1. Un sencillo ejemplo con Toast
8.1.2. Recepción de un mensaje SMS
8.2. Introducción a las notificaciones
8.2.1. La clase Notification
8.2.2. Cómo informar al usuario de la llegada de un SMS
8.3. Alarmas
8.3.1. Ejemplo de alarma
8.3.2. Cómo utilizar notificaciones con alarmas
8.4. Resumen
9. Gráficos y animaciones
9.1. Cómo dibujar gráficos en Android
9.1.1. Dibujar con XML
9.1.2. Las formas drawable de XML
Android funciona en una gran variedad de dispositivos móviles, desde smartphones a tablets, pasando por incontables gadgets. Sin duda es la plataforma móvil más extendida del mercado. Casi nada es ya imposible gracias a Android. Y ahora nada en Android será imposible para nosotros.
Este libro constituye una guía de aprendizaje exhaustiva para programadores de Android. Se tratan aspectos importantes de la arquitectura del sistema, así como distintas estrategias de implementación. Profundizará en el SDK, construirá aplicaciones WebKit con HTML 5 y aprenderá a extender, e incluso sustituir, características propias de Android mediante fascinantes ejemplos.
Contiene detalladas aplicaciones de ejemplo sobre temas avanzados. Analiza aplicaciones completas, tecnología de localización, aplicaciones Web para Android, Bluetooth, sensores, AppWidgets y dispositivos de integración. Asimismo, incluye programación de aplicaciones en C con Android Native Development Kit.