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



Documentos relacionados
Lista de acrónimos Cómo leer este libro? La clase Application Uso del patrón Singleton... 25

Índice general. Lista de acrónimos Cómo leer este libro?... 17

Lista de acrónimos... xv Cómo leer este libro?... xvii CAPÍTULO 1. Diseño avanzado de interfaces de usuario... 19

online Programación para dispositivos Android 4.x

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

Android 5 Principios del desarrollo de aplicaciones Java

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

JAVA 8 Los fundamentos del lenguaje Java (con ejercicios prácticos corregidos)

Computación en la nube. Plataformas de servicios en la nube y Servicios en la nube

Objetivos y Temario CURSO DESARROLLO APLICACIONES ANDROID 4.0

Programación Android Completo

Contenido QUÉ ES SERVIDOR CLOUD?... 3 ACCESO AL SERVIDOR CLOUD... 3 ADMINISTRACIÓN DEL SISTEMA... 6

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

Objetivos y Temario CURSO DESARROLLO DE APLICACIONES EN LA NUBE PARA DISPOSITIVOS MOVILES OBJETIVOS

Lista de siglas y acrónimos... xvii. Cómo leer este libro?... xix

Índice de contenidos Introducción 1. Las ventanas de Windows 2. El escritorio 3. La barra de tareas

WordPress 4 Un CMS para crear y administrar blogs y sitios web

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

Android 4 Principios del desarrollo de aplicaciones Java

Prólogo...3 Agradecimientos...4. Tabla de Contenidos...5. Lista de figuras Apartado I: El ecosistema móvil...33

Android Professional

Servicio de Atención al Cliente. Requisitos técnicos para realizar correctamente la transmisión de ficheros

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

ALMACENAMIENTO Manual de uso de owncloud

Tema 2: Introducción a Android

PRIMEROS PASOS EN DELTA


NUEVO COMPONENTE DE FIRMA

Programación para Android

MANUAL PARA FIRMAR ARCHIVOS CON CERTIFIRMA PDF PKCS#12 Y TOKEN VERIFICACION DE ARCHIVOS POR MEDIO DE ADOBE READER

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

WordPress 3.5 Un CMS para crear y administrar blogs y sitios web

LX8_022 Requisitos técnicos de. instalación para el usuario

Unidad II. Interfaz Grafica (continuación ) Basado en clases de Ing. Carlos A. Aguilar

Manual de Usuario Servidor Cloud

Guía del usuario - escan para Linux Servidor de archivo

CURSO INTERMEDIO DE PROGRAMACIÓN EN ANDROID

Integración KNX - LYNX

Manual de Usuario: Servidor Cloud y Servidor Cloud Gestionado

Tema 5: Tecnologías Web

Requisitos Técnicos y de Configuración Sistema de Notificación Electrónica

MODELO DE IMPLEMENTACIÓN

Google Drive. Registro y gestión de archivos. Manual de uso

AS237 - Dreamweaver CS5

Servicio de Notificaciones Electrónicas y Dirección Electrónica Habilitada

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

Guía de resolución de problemas de firma con certificado en la Sede Electrónica del CIEMAT

ANDROID INTERMEDIO - E-LEARNING - EN LÍNEA

SUBDIRECCIÓN GENERAL DE TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIONES

REQUISITOS PARA EL USO DEL REGISTRO ELECTRÓNICO

Entorno de desarrollo Instalación y configuración

BITDEFENDER GRAVITYZONE

Curso de Desarrollo en Android Experto

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

Android Mobile & Web Development Training

REQUISITOS PARA EL USO DEL REGISTRO ELECTRÓNICO

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

Servicio de VPN de la Universidad de Salamanca

DEV SISTEMA DE NOTIFICACIONES ELECTRÓNICAS VIALES ADMINISTRATIVAS DIRECCIÓN ELECTRÓNICA VIAL

Parte III. Características del proyecto. Web corporativa. Aplicación gestión. Comandas. Gestión cocina.

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

Pre-requisitos para el uso DE Certificados digitales en el siif nacion Generalidades Maquina virtual de java...

Manual de usuario. Instalación y configuración del cliente VPN OpenVPN para el acceso a los servicios del Laboratorio Virtual

Curso Online de Programación Android

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

Ejercicios - Persistencia en Android: ficheros y SQLite

INSTALACION MANUAL DE ECLIPSE EN UBUNTU

Mi primer servidor. Fernando Fernández Consultor Preventa HP ISS

Qué ventajas presenta Google Drive para catedráticos y alumnos?

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

Proyecto final de curso Android: Programación de aplicaciones (3ª edición online, octubre-enero 2013)

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

Formato para prácticas de laboratorio

Guía de Instalación del servicio de BackupOnline de Idecnet. Indice

CONFIGURACIÓN DE NAVEGADOR MOZILLA FIREFOX

Índice general. Pág. N. 1. Sesión 1: Aspectos generales Conceptos básicos Windows Nuevo logotipo de Windows 8

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

Programando con SinaProg. Manual de usuario para programar microcontroladores Atmel AVR en Windows con SinaProg

Manual de usuario de IBAI BackupRemoto

Formato para prácticas de laboratorio

PROGRAMA DE MATERIA MATERIA:

Instalación. Interfaz gráfico. Programación de Backups. Anexo I: Gestión de la seguridad. Manual de Usuario de Backup Online 1/21.

Las redes y su seguridad

Guía del usuario - escan para Linux Escritorio

HiSuite: FAQ de conexión

Matriz de compatibilidad de applet 3.4

MANUAL DE INSTALACIÓN DEL COMPONENTE WEBSIGNER JAVA. Versión 4.0

CURSO ONLINE DE DESARROLLO DE APLICACIONES EN ANDROID NIVEL I

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

Google Drive Antonio Luis Lallena Passas

ÍNDICE. Introducción... Capítulo 1. Novedades, mejoras y requisitos para la instalación... 1

MANUAL DE INSTALACIÓN

Sede electrónica. Requisitos para la firma electrónica en este Ministerio

MANUAL SISTEMA ENCRIPTACIÓN DE HECHOS RESERVADOS

Uso de Firma Digital en la Oficina Virtual del Consejo de Seguridad Nuclear

Índice. agradecimientos...19

Instrucciones para la instalación de WebSigner en Internet Explorer

Guía de Inicio Respaldo Cloud

Transcripción:

Índice general Lista de acrónimos... xv Cómo leer este libro?... xvii CAPÍTULO 1. Diseño avanzado de interfaces de usuario... 19 1.2.1. Insertar fragments desde XML... 27 1.2.2. Insertar fragments desde código... 32 1.2.3. Comunicación e intercambio de fragments... 33 1.3.1. Añadiendo preferencias de usuario mediante PreferenceFragment... 42 1.5.1. Animaciones de vistas: transiciones entre actividades... 46 1.5.1.1. Aplicando animaciones de vistas en Audiolibros... 49 1.5.2. Animaciones de propiedades... 51 1.5.2.1. El motor básico de animación: ValueAnimator... 52 1.5.2.2. Automatizando las animaciones: ObjectAnimator... 54 1.5.2.3. Combinando animaciones: AnimatorSet... 55 1.5.2.4. Definiendo animaciones en XML... 56 1.5.2.5. Nuevas propiedades de la clase View... 58 1.5.2.6. Aplicando animaciones de propiedades en Audiolibros... 60 CAPÍTULO 2. Diseño personalizado de vistas... 63 2.2.1. Creación de escuchadores de eventos... 68 2.3.1. Algo más de información sobre TextView... 74 vii

El gran libro de Android avanzado 2.5.1. Diseño y dibujo de la vista... 80 2.5.2. Gestión de eventos... 85 2.5.3. Cómo Android dibuja las vistas y obtiene sus tamaños... 88 2.5.4. Interactuando con otros objetos... 91 2.6.1. Pasos a seguir para crear un widget... 92 2.6.1.1. Definir las características del widget... 93 2.6.1.2. Diseñar el layout del widget... 94 2.6.1.3. Crear una clase descendiente de AppWidgetProvider... 94 2.6.1.4. Declarar el widget en AndroidManifest... 95 2.6.1.5. Crear una actividad para configurarlo... 95 2.6.2. Creación de un widget de escritorio sencillo... 96 2.6.3. Actualizando el widget de escritorio... 98 2.6.4. Actuando ante el evento onclick... 100 2.6.5. Añadiendo una actividad de configuración... 102 CAPÍTULO 3. Hilos de ejecución en la interfaz del usuario... 107 3.1.1. Cola de eventos y bucle de eventos... 109 3.1.2. El hilo de la interfaz de usuario de una aplicación Android... 110 3.2.1. Hilos para el manejo de eventos... 113 3.2.2. El problema de los hilos en segundo plano: no tienen acceso a la interfaz gráfica de usuario... 114 3.3.1. Extendiendo AsyncTask... 115 3.3.2. Secuencia de operaciones... 116 3.4.1. Llamando al método ondraw()... 123 3.4.2. Programación con SurfaceViews... 124 3.4.3. Estructura de la aplicación... 125 viii

Índice CAPÍTULO 4. Comunicación con Bluetooth... 131 4.2.1. Emparejar dispositivos... 133 4.2.2. Transmisión de datos... 134 4.3.1. Pasos de programación... 137 4.4.1. Clase de utilidad para un servidor... 139 4.4.2. Clase utilidad para un cliente... 142 4.4.3. Hilos de fondo... 144 4.4.3.1. Hilo de fondo del servidor... 145 4.4.3.2. Hilo de fondo del cliente... 150 CAPÍTULO 5. Servicios en la nube... 163 5.1.1. Ventajas y desventajas de utilizar los servicios en la nube... 165 5.1.2. Servicios en la nube ofrecidos por Google... 167 5.1.2.1. Registrarse en los servicios en la nube de Google... 167 5.1.2.2. Servicios en la nube de Google... 168 5.2.1. Servicio Google Cloud Messaging... 170 5.2.2. Activar Google Cloud Messaging en Google API Console... 171 5.2.3. Aplicación cliente Google Cloud Messaging... 173 5.2.4. Aplicación servidor Google Cloud Messaging... 184 5.3.1. Almacenamiento en Google Drive... 189 5.3.2. Google Drive API v2... 190 5.3.3. Crear una aplicación Android para Google Drive... 193 5.3.3.1. Extracción de la huella digital (SHA1)... 193 5.3.3.2. Habilitar el servicio Google Drive API... 195 ix

El gran libro de Android avanzado 5.3.3.3. Autorizar el acceso a Google Drive... 196 5.3.3.4. Subir ficheros a Google Drive... 202 5.4.1. Fundamentos... 206 5.4.2. Declaración del agente de copia de seguridad en Manifest... 207 5.4.3. Registro del servicio Android Backup... 207 5.4.4. BackupAgent... 208 5.4.5. BackupAgentHelper... 209 5.4.5.1. Copia de seguridad de SharedPreferences... 209 5.4.5.2. Copia de seguridad de archivos de almacenamiento interno... 210 5.4.6. Comprobación de la versión al restaurar los datos... 210 5.4.7. Solicitud de copia de seguridad y restauración... 211 5.4.8. Un ejemplo paso a paso... 211 CAPÍTULO 6. Aplicaciones web en Android... 215 6.1.1. Una aplicación web de ejemplo: 3 en Raya... 217 6.1.2. Aplicación web online y offline... 223 6.2.1. Mostrar contenido web usando una intención... 225 6.2.2. Uso de un WebView para mostrar contenido web... 226 6.2.3. Aspectos básicos de un WebView... 228 6.2.3.1. Evitar el reinicio de la actividad... 228 6.2.3.2. Abrir los enlaces en el WebView... 228 6.2.3.3. Opciones de inicio... 229 6.2.3.4. Barra de progreso... 229 6.2.3.5. Navegación... 231 6.2.3.6. Controlar el botón «Volver»... 233 6.2.3.7. Habilitar alertas JavaScript... 234 6.2.3.8. Gestión de errores... 234 6.2.3.9. Descargas... 235 6.2.3.10. Conectividad... 237 x

Índice 6.3.1. Área de visualización y escalado... 239 6.3.2. Escalado... 242 6.3.3. Densidad de pantalla del dispositivo... 242 6.5.1. Phonegap... 249 6.5.2. Jquery Mobile... 253 6.5.2.1. Crear una página básica... 254 6.5.2.2. Añadir contenido... 256 6.5.2.3. Crear una lista... 256 6.5.2.4. Añadir un deslizador... 257 6.5.2.5. Crear un botón... 257 6.5.2.6. Temas... 258 CAPÍTULO 7. Programación en código nativo... 263 7.1.1. Cuándo utilizar código nativo... 265 7.1.2. Contenido de Android NDK... 267 7.1.2.1. Las herramientas de desarrollo... 267 7.1.2.2. Documentación... 268 7.1.2.3. Aplicaciones de ejemplo... 268 7.2.1. Instalación Android NDK en Windows... 269 7.2.2. Instalación Android NDK en Linux... 273 7.2.3. Un primer ejemplo con Android NDK... 275 7.3.1. Desarrollo práctico de Android NDK... 279 7.3.2. Situación del código fuente nativo... 279 7.3.2.1. Fichero Android.mk... 280 7.3.2.2. Fichero Application.mk (opcional)... 282 7.3.2.3. La herramienta ndk-build... 284 xi

El gran libro de Android avanzado 7.4.1. Librerías de enlace estático y dinámico... 286 7.4.2. Tipos fundamentales, referencias y arrays... 287 7.4.3. Desarrollo paso a paso de un programa mediante JNI (I)... 289 7.4.3.1. Declaración del método nativo y creación del archivo Android.mk... 290 7.4.3.2. Creación del fichero de cabecera nativo... 291 7.4.3.3. Implementación del método nativo... 291 7.4.3.4. Compilación del fichero nativo... 292 7.4.3.5. Ejecución de la aplicación... 293 7.4.4. Acceso a métodos Java desde código nativo (JNI callback)... 293 7.4.4.1. Métodos de instancia... 294 7.4.4.2. Métodos de clase... 294 7.4.4.3. Invocar constructores... 295 7.4.5. Excepciones... 300 CAPÍTULO 8. Redes sociales: Facebook y Twitter... 313 8.1.1. Preliminares... 314 8.1.1.1. Darse de alta en Facebook como desarrollador... 314 8.1.1.2. SDK de Facebook para Android... 314 8.1.1.3. Configurando nuestra aplicación... 317 8.1.2. Nuestro proyecto Android... 321 8.1.3. Aplicación de ejemplo... 324 8.2.1. Preliminares... 332 8.2.2. Autentificación con Oauth... 333 8.2.3. Configurando nuestra aplicación... 334 8.2.4. Aplicación de ejemplo... 337 CAPÍTULO 9. Ingeniería inversa en Android... 345 xii

Índice 9.2.1. La máquina virtual Dalvic... 351 9.2.2. Decompilando aplicaciones Android... 353 9.3.1. Modificando recursos binarios de una aplicación... 355 9.3.2. Modificando recursos XML de una aplicación... 358 9.3.3. Modificando el código de una aplicación... 360 9.5.1. Cómo funciona el servicio de licencias... 369 9.5.2. Como añadir una licencia a nuestra aplicación... 370 9.5.3. Qué es una política de licencia?... 377 9.6.1. Ingeniería inversa en una aplicación con licencia... 379 9.6.2. Primera contramedida: ofuscar el código... 384 9.6.3. Segunda contramedida: no usar la librería LVL estándar... 387 9.6.4. Tercera contramedida: verificar que no ha modificado nuestra APK... 389 xiii