Está en la página 1de 7

Prólogo

1. Introducción
2. A quién se dirige este libro
3. Conocimientos previos necesarios para abordar este libro
4. Objetivos a alcanzar
5. Descarga
6. Información complementaria
7. Recursos

El universo Android
1. Introducción
2. Presentación de Android
2.1 Open Handset Alliance TM
2.2 Historia
2.3 Versiones de Android
2.3.1 Cronología de versiones
2.3.2 Reparto de las distribuciones Android
2.4 Arquitectura
3. Entorno de desarrollo
3.1 Requisitos previos
3.2 Eclipse y el Plug-in ADT
4. Instalación de Android Studio

Primeros pasos
1. Primer proyecto Android
1.1 Creación del proyecto
1.2 Ejecución de la aplicación
1.2.1 En el emulador Android
1.2.2 En un dispositivo Android
2. Estructura de un proyecto Android
2.1 El manifiesto
2.1.1 Etiqueta manifest
2.1.2 Etiquetas uses-sdk
2.1.3 Etiqueta application
2.2 Los recursos

Descubrir la interfaz de usuario


1. Introducción
2. Pantallas
3. Actividades y Layout
4. Modo programático y modo declarativo
5. Vistas
6. Layouts
6.1 Creación en modo declarativo
6.2 Creación en modo programático
7. Widgets
7.1 Declaración
7.2 Uso
7.3 Descubrir algunos widgets
7.3.1 TextView (campo de texto)
7.3.2 EditText (campo para introducir texto)
7.3.3 Button (Botón)
7.3.4 Otros widgets

Los fundamentos
1. Introducción
2. Intención
2.1 Intención explícita
2.2 Intención implícita
2.2.1 Creación
2.2.2 Filtro de intención
2.3 Intención pendiente
3. Actividad
3.1 Declaración
3.2 Ciclo de vida
3.2.1 onCreate
3.2.2 onStart
3.2.3 onResume
3.2.4 onPause
3.2.5 onStop
3.2.6 onRestart
3.2.7 onDestroy
3.3 Ejecución
3.4 Salvaguarda y restauración del estado
3.5 Pila de actividades

Completar la interfaz de usuario


1. Introducción
2. Estilos y temas
3. Menús
3.1 Declaración
3.2 Uso
3.3 Menú de actividad
3.3.1 Creación
3.3.2 Uso
3.4 Menú contextual
3.4.1 Creación
3.4.2 Uso
4. Barra de acción
4.1 Opciones de menú
4.2 Icono de la aplicación
5. Notificaciones
5.1 Toast
5.2 Caja de diálogo
5.2.1 Generalidades
5.2.2 Caja de diálogo de alerta
5.3 Barra de notificación
5.3.1 Creación de una notificación
5.3.2 Envío de una notificación
6. Internacionalización

Componentes principales de la aplicación


1. Introducción
2. Fragmento
2.1 Integración del fragmento
2.1.1 Modo declarativo
2.1.2 Modo programático
2.2 Fragmentos y representación adaptativa
2.3 Ciclo de vida
2.3.1 onAttach
2.3.2 onCreateView
2.3.3 onActivityCreated
2.3.4 onDestroyView
2.3.5 onDetach
2.4 Salvaguarda y restauración del estado
2.5 Pila de fragmentos
3. Servicio
3.1 Declaración
3.2 Uso directo
3.3 Uso estableciendo una conexión
3.4 Ciclo de vida
3.4.1 onCreate
3.4.2 onStartCommand
3.4.3 onBind
3.4.4 onUnbind
3.4.5 onDestroy
4. Receptor de eventos
4.1 Evento
4.2 Declaración
4.3 Ciclo de vida
5. Lista
5.1 Implementación estándar
5.1.1 Layout de los elementos de la lista
5.1.2 Adaptadores
5.1.3 Implementación
5.2 Implementación específica
5.2.1 Layout de los elementos de la lista
5.2.2 Adaptador
5.3 Selección de un elemento

La persistencia de los datos


1. Introducción
2. Archivos de preferencias
2.1 Preparar el archivo
2.2 Lectura
2.3 Escritura
2.4 Borrado
3. Archivos
3.1 Almacenamiento interno
3.1.1 Escritura
3.1.2 Lectura
3.1.3 Eliminar un archivo
3.2 Almacenamiento externo
3.2.1 Disponibilidad del soporte
3.2.2 Accesos y ubicaciones
3.2.3 Archivos comunes
3.3 Archivos temporales
3.3.1 Almacenamiento interno
3.3.2 Almacenamiento externo
4. Bases de datos SQLite
4.1 Creación de una base de datos
4.2 Procedimientos y consultas SQL
4.2.1 Navegar los resultados
4.2.2 Lectura de datos
4.3 Actualizaciones
5. Proveedor de contenidos
5.1 Interfaz y URI
5.2 Consultas
5.3 Agregar un registro
5.4 Borrado de registros
6. Copia de seguridad en la nube
6.1 Suscribirse a Android Backup Service
6.2 Configuración de la clave
6.3 Agente de copia de seguridad
6.3.1 Configuración
6.3.2 BackupAgentHelper
6.4 Gestor de copia de seguridad
6.4.1 Solicitar una copia de seguridad
6.4.2 Probar el servicio

Construir interfaces complejas


1. Introducción
2. Crear sus propios componentes
2.1 Sobrecargar un componente existente
2.1.1 Extender una clase del paquete android.widget
2.1.2 Integrar el nuevo componente en un layout
2.1.3 Agregar atributos personalizados
2.2 Reunir un conjunto de componentes
2.3 Construir completamente un componente
2.3.1 Implementar onDraw()
2.3.2 Implementar onMeasure()
2.3.3 Obtener las dimensiones de la pantalla
3. Utilizar el Navigation Drawer
3.1 Implementar el panel de navegación
3.2 Usar el panel de navegación
3.2.1 Detectar los eventos de apertura/cierre
3.2.2 Navigation Drawer y ActionBar
3.2.3 Integrar el botón de apertura/cierre
3.2.4 Forzar la apertura del panel cuando se inicia la actividad
4. Crear imágenes redimensionables
4.1 Las imágenes 9-patch
4.1.1 Presentación
4.1.2 Crear imágenes 9-patch
4.2 Los drawables XML
4.2.1 Definir una forma en XML
4.2.2 Modificar la forma inicial
4.2.3 Combinar varias formas
5. Representación en pantalla compleja
5.1 Seleccionar el layout
5.2 Posicionamiento relativo
5.3 Superposición de vistas
5.4 Un último detalle

Concurrencia, seguridad y red


1. Introducción
2. Procesos
2.1 android:process
2.2 Compartición de proceso
3. Programación concurrente
3.1 AsyncTask
3.2 Thread
3.2.1 Creación
3.2.2 runOnUIThread
3.2.3 Comunicación interthread
4. Seguridad y permisos
4.1 Declaración de los permisos
4.2 Restricción de uso
5. Red
5.1 Agente usuario
5.2 AndroidHttpClient

Redes sociales
1. Introducción
2. Integración estándar
2.1 Con Android 2.x y 3.x
2.2 Con Android 4.x
3. Integración completa
3.1 Obtener las claves de API
3.1.1 Crear una aplicación Facebook
3.1.2 Otras redes sociales
3.2 Instalar el SDK SocialAuth-Android
3.2.1 Integración de las librerías con el proyecto
3.2.2 Uso de la API

Trazas, depuración y pruebas


1. Introducción
2. Registro de eventos
2.1 Consultar los eventos
2.2 Escribir eventos
3. Depuración
3.1 Depuración paso a paso
3.2 DDMS
3.2.1 Vista Devices
3.2.2 Vista Emulator Control
3.2.3 Vista Threads
3.2.4 Vista Heap
3.2.5 Vista Allocation Tracker
3.2.6 Vista File Explorer
4. Pruebas unitarias y funcionales
4.1 Creación de un proyecto de pruebas
4.2 Creación de una clase de caso de prueba
4.2.1 Probar una actividad
4.2.2 Probar un servicio
4.2.3 Probar un receptor de eventos
4.3 Ejecución de las pruebas
5. Prueba del mono

Publicar una aplicación


1. Introducción
2. Preliminares
2.1 Versión de la aplicación
2.1.1 android:versionCode
2.1.2 android:versionName
2.2 Filtros para el mercado
2.2.1 uses-feature
2.2.2 uses-configuration
3. Firma digital de la aplicación
3.1 Compilación en modo debug
3.2 Compilación en modo release
3.2.1 Protección del código
3.2.2 Firmar la aplicación
3.2.3 Instalar la aplicación
4. Publicación de la aplicación en Play Store
4.1 Inscripción
4.2 Publicación
4.2.1 Archivo .apk
4.2.2 Ficha en Google Play Store
4.2.3 Tarifas y disponibilidad
4.2.4 Coordenadas
4.2.5 Aceptar
4.3 ¿ Y después ?

Sensores y geolocalización
1. Introducción
2. Fundamentos
3. Detectar un sensor
4. Obtener los valores
5. Localización geográfica
5.1 Permisos
5.2 Gestor de localización
5.3 Recuperar los datos de localización
5.3.1 En caché
5.3.2 Una sola vez
5.3.3 Periódicamente
5.3.4 Detener las actualizaciones
6. Google Maps
6.1 Implementación
6.1.1 Instalación del SDK
6.1.2 Configuración de la aplicación
6.1.3 Obtener una clave de uso
6.2 Uso
6.2.1 Declaración de la vista
6.2.2 MapActivity
6.2.3 Geolocalización

La tecnología NFC
1. Introducción
2. La tecnología NFC
2.1 Los escenarios de uso de NFC
2.2 Los tags NFC
3. Compatibilidad con NFC
3.1 Usar con un emulador
3.2 Detectar si el dispositivo es compatible con NFC
3.2.1 Filtrado por dispositivo
3.2.2 Comprobación en tiempo de ejecución
3.2.3 Activación por el usuario
4. Descubrir un tag NFC
4.1 Compatibilidad con una intención ACTION_NDEF_DISCOVERED
4.2 Compatibilidad con una intención ACTION_TECH_DISCOVERED
4.3 Compatibilidad con una intención ACTION_TAG_DISCOVERED
4.4 Android Application Records
4.5 Foreground dispatch
5. Leer un tag NFC
5.1 Determinar el contenido de un tag NDEF
5.2 Leer una URI
5.3 Leer una cadena de caracteres
5.4 Leer un tipo MIME
5.5 Leer un tag de tipo TNF_WELL_KNOWN
6. Escribir un tag NFC
6.1 Definir un registro NdefRecord con la API 9
6.1.1 Contruir un payload de tipo texto
6.1.2 Construir un payload de tipo URI
6.2 Definir un registro NdefRecord con las API 14 y 16

Funcionalidades avanzadas
1. Introducción
2. App Widget
2.1 Creación
2.2 Declaración
2.3 Configuración
2.4 Ciclo de vida
2.4.1 onEnabled
2.4.2 onDisabled
2.4.3 onUpdate
2.4.4 onDeleted
2.5 RemoteViews
2.6 Actividad de configuración
2.6.1 Declaración
2.6.2 Creación
3. Proteger las aplicaciones de pago
3.1 Instalación de la LVL
3.1.1 Descarga
3.1.2 Integración de la LVL en el código fuente
3.1.3 Integración de la LVL como librería
3.2 Uso de la LVL
3.2.1 Política
3.2.2 Ofuscación
3.2.3 Verificación de la licencia
3.3 Probar
3.3.1 Probar sobre un dispositivo Android
3.3.2 Probar sobre un emulador
4. Proponer compras integradas
4.1 Preparación
4.2 Uso del pago integrado
4.2.1 Iniciar la comunicación con Play Store
4.2.2 Obtener la lista de productos
4.2.3 Comprobar que un producto se ha solicitado
4.2.4 Solicitar un producto

También podría gustarte