El Gran Libro de Android - Tomás Gironés [PDF] 404 pág. - 2ª Edición





En los últimos años, los teléfonos móviles están transformando la forma en que las personas se comunican. Los nuevos terminales ofrecen unas capacidades similares a las de un ordenador personal. Un teléfono móvil siempre está en el bolsillo del usuario, esto le convierte en el nuevo ordenador personal del siglo XXI.





Android es la plataforma libre para el desarrollo de aplicaciones móviles creada por Google. En la actualidad se ha convertido en la plataforma líder frente a otras como iPhone o Windows Phone. Las aplicaciones Android están ampliando su rango de influencia a nuevos dispositivos tales como tabletas, net-books o Google TV.




Este libro pretende ser una guía para aquellos lectores que quieran introducirse en la programación en Android. Todos los capítulos son descritos por medio de sencillos ejemplos, aumentando su nivel de complejidad a medida que avanzan los capítulos. La obra está recomendada tanto para usuarios con poca experiencia, como para programadores experimentados.



A lo largo del libro se desarrolla una aplicación de ejemplo, el mítico videojuego Asteroides. Comienza con una versión sencilla, que se irá completando capítulo a capítulo, para que incluya gráficos vectoriales y en mapa de bits, control mediante pantalla táctil y sensores, geo-localización, multimedia, ficheros, XML, SQL, acceso a Internet, servicios Web Así cómo publicar en el Google Play Store. El libro propone un aprendizaje activo, con actividades, muchas a través de Internet:




Poli[Media] Más de 50 videos elaborados por el autor.



Ejercicio paso a paso: La mejor forma de aprender es practicando.

Práctica: Para afianzar lo aprendido hay que practicar. Solución: Te será de ayuda si tienes problemas en las prácticas.

Recursos adicionales: Localiza rápidamente la información clave.


Preguntas de repaso y reflexión: ¿Lo has entendido todo correctamente?

Jesús Tomás es doctor en informática, profesor titular del Departamento de Comunicaciones en la Universidad Politécnica de Valencia. Trabaja en múltiples proyectos de investigación y transferencia de tecnología relacionados con inteligencia artificial. Ha publicado gran cantidad de trabajos en revistas científicas y varios libros didácticos sobre nuevas tecnologías. Tiene una amplia experiencia impartiendo cursos de formación en empresas.

Especificaciones Técnicas
El Gran Libro de Android, Tomás Gironés, Jesús (Segunda Edición)

PDF | Spanish | 116 MB | Tomas Girones, Jesús | Editorial: MARCOMBO, S.A. | ISBN: 8426718329 | Páginas: 404 | Edición: 2ª | 1 de mayo de 2012


Contenido:

Lista de acrónimos

¿Cómo leer este libro?

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

1.1. ¿Qué hace que Android sea especial? . 22

1.2. Los orígenes . 23

1.3. Comparativa con otras plataformas 24

1.4. Arquitectura de Android. 26

1.4.1. El núcleo Linux 27

1.4.2. Runtime de Android . 27

1.4.3. Librerías nativas 28

1.4.4. Entorno de aplicación 28

1.4.5. Aplicaciones 29

1.5. Instalación del entorno de desarrollo 29

1.5.1. Instalación de los componentes por separado 30

1.5.1.1. Instalación de la máquina virtual Java . 30

1.5.1.2. Instalación de Eclipse . 30

1.5.1.3. Instalar Android SDK de Google 31

1.5.2. Instalación del plug-in Android para Eclipse (ADT) . 35

1.5.3. Instalación con MOTODEV Studio 36

1.6. Las versiones de Android y niveles de API . 38

1.6.1. Android 1.0 Nivel de API 1 (septiembre 2008) 39

1.6.2. Android 1.1 Nivel de API 2 (febrero 2009) 39

1.6.3. Android 1.5 Nivel de API 3 (abril 2009, Cupcake) . 39

1.6.4. Android 1.6 Nivel de API 4 (diciembre 2009, Donut) . 39

1.6.5. Android 2.0 Nivel de API 5 (octubre 2009, Éclair) . 40

1.6.6. Android 2.1 Nivel de API 7 (enero 2010, Éclair) 40

1.6.7. Android 2.2 Nivel de API 8 (mayo 2010, Froyo) 40

1.6.8. Android 2.3 Nivel de API 9 (diciembre 2010, Gingerbread) 41

1.6.9. Android 3.0 Nivel de API 11 (febrero 2011, Honeycomb) . 41

1.6.10. Android 3.1 Nivel de API 12 (mayo 2011) 42viii

1.6.11. Android 3.2 Nivel de API 13 (julio 2011) . 42

1.6.12. Android 4.0 Nivel de API 14 (octubre 2011, Ice Cream Sandwich) 43

1.6.13. Android 4.0.3 Nivel de API 15 (diciembre 2011) 43

1.6.14. Elección de la plataforma de desarrollo . 43

1.7. Creación de un primer programa 45

1.7.1. Creación del proyecto 45

1.8. Ejecución del programa. 49

1.8.1. Ejecución en el emulador 49

1.8.2. Ejecución en un terminal real 49

1.9. Elementos de un proyecto Android . 51

1.10. Componentes de una aplicación . 53

1.10.1. Vista (View) 53

1.10.2. Layout 53

1.10.3. Actividad (Activity) 54

1.10.4. Servicio (Service) 54

1.10.5. Intención (Intent) . 54

1.10.6. Receptor de anuncios (Broadcast receiver) . 54

1.10.7. Proveedores de Contenido (Content Provider) 55

1.11. Documentación y ApiDemos . 55

1.11.1. Donde encontrar documentación . 55

1.11.2. La aplicación ApiDemos . 55

1.12. Depurar 57

1.12.1. Depurar con Eclipse . 57

1.12.2. Depurar con mensajes Log. 58

CAPÍTULO 2. Diseño de la interfaz de usuario: Vistas y Layouts 61

2.1. Creación de una interfaz de usuario por código . 62

2.2. Creación de una interfaz de usuario usando XML 63

2.2.1. Edición visual de las vistas 66

2.3. Layouts . 70

2.4. Una aplicación de ejemplo: Asteroides . 76

2.4.1. Recursos alternativos 78

2.5. Estilos y temas . 82

2.5.1. Los estilos . 83

2.5.1.1. Heredar de un estilo propio . 83


2.5.2. Los temas . 84

2.6. Uso práctico de Vistas y Layouts 85

2.6.1. Acceder y modificar las propiedades de las vistas por código 87

2.7. Uso de TabLayout 89

2.7.1. Uso de la etiqueta en Layouts 91

CAPÍTULO 3. Actividades e Intenciones 93

3.1. Creación de nuevas actividades . 94

3.2. Comunicación entre actividades . 98

3.3. Añadiendo un menú 100

3.4. Creación y uso de iconos 102

3.5. Añadiendo preferencias de usuario 105

3.5.1. Organizando preferencias . 108

3.5.2. Como se almacenan las preferencias de usuario . 109

3.5.3. Accediendo a los valores de las preferencias . 110

3.6. Añadiendo una lista de puntaciones en Asteroides 111

3.7. La vista ListView . 113

3.7.1. Un ListView que visualiza una lista de Strings 115

3.7.2. Un ListView que visualiza Layouts personalizados . 116

3.7.3. Un ListView con nuestro propio adaptador . 118

3.7.4. Detectar una pulsación sobre un elemento de la lista . 120

3.8. Las Intenciones 121

3.8.1. La etiqueta . 126

CAPÍTULO 4. Gráficos en Android 127

4.1. Clases para gráficos en Android . 128

4.1.1. Canvas 128

4.1.2. Paint 130

4.1.2.1. Definición de colores . 131

4.1.3. Path 133

4.1.4. Drawable . 135x

4.1.4.1. BitmapDrawable 136

4.1.4.2. GradienDrawable 137

4.1.4.3. TransitionDrawable . 138

4.1.4.4. ShapeDrawable 138

4.1.4.5. AnimationDrawable . 139

4.2. Creación de una vista en un fichero independiente 140

4.3. Creando la actividad principal de Asteroides 143

4.3.1. La clase Gráfico . 145

4.3.2. La clase VistaJuego 146

4.3.3. Introduciendo la nave en VistaJuego 148

4.4. Representación de gráficos vectoriales en Asteroides . 150

4.5. Animaciones . 152

4.5.1. Animaciones Tween 153

4.5.2. Animaciones de propiedades 156

CAPÍTULO 5. Entradas en Android: teclado, pantalla táctil y sensores 157

5.1. Manejando eventos de usuario . 158

5.1.1. Escuchador de eventos . 158

5.1.2. Manejadores de eventos . 159

5.2. El teclado 159

5.3. La pantalla táctil . 162

5.3.1. Manejo de la pantalla táctil con multi-touch 165

5.3.2. Manejo de la nave con la pantalla táctil 168

5.4. Gestures . 169

5.4.1. Creación y uso de una librería de gestures . 170

5.4.2. Añadiendo gestures a Asteroides 174

5.5. Los sensores 176

5.5.1. Un programa que muestra los sensores disponibles

y sus valores en tiempo real 181

5.5.2. Utilización de los sensores en Asteroides . 183

5.6. Uso de hilos de ejecución (Threads) . 184

5.6.1. Introduciendo movimiento en Asteroides 185

5.7. Introduciendo un misil en Asteroides 187

CAPÍTULO 6. Multimedia y ciclo de vida de una actividad 191

6.1. Ciclo de vida de una actividad 192

6.1.1. ¿Qué proceso se elimina? . 198

6.1.2. Guardando el estado de una actividad 200

6.2. Utilizando multimedia en Android 202

6.3. La vista VideoView 205

6.4. La clase MediaPlayer 207

6.4.1. Reproducción de audio con MediaPlayer 207

6.5. Un reproductor multimedia pasó a paso . 208

6.6. Introduciendo efectos de audio con SoundPool . 215

6.7. Grabación de audio . 217

CAPÍTULO 7. Seguridad y posicionamiento 223

7.1. Los tres pilares de la seguridad en Android 224

7.1.1. Usuario Linux y acceso a ficheros . 225

7.1.2. El esquema de permisos en Android . 225

7.1.3. Permisos definidos por el usuario en Android . 227

7.2. Localización 231

7.2.1. Emulación del GPS con Eclipse 236

7.3. Google Maps 237

7.3.1. Obtención de una clave Google Maps 237

7.4. Fragmentando los asteroides 242

CAPÍTULO 8. Servicios, notificaciones y receptores de anuncios 245

8.1. Introducción a los servicios en Android . 246

8.1.1. Ciclo de vida de un servicio. 247

8.1.2. Permisos . 249

8.2. Un servicio para ejecución en segundo plano. . 249

8.2.1. Los métodos onStartCommad() y onStart() 252

8.3. Las notificaciones de la barra de estado . 254

8.3.1. Configurando tipos de avisos en las notificaciones . 257

8.3.1.1. Asociar un sonido 257

8.3.1.2. Añadiendo vibración . 257xii

8.3.1.3. Añadiendo parpadeo de LED 257

8.4. Receptores de anuncios 258

8.4.1. Receptor de anuncios registrado en AndroidManifest.xml 259

8.4.2. Arrancar un servicio tras cargar el sistema operativo . 265

8.5. Un servicio como mecanismo de comunicación entre aplicaciones . 266

8.5.1. Crear la interfaz en AIDL . 267

8.5.2. Implementar la interfaz 268

8.5.3. Publicar la interfaz en un servicio 269

8.5.4. Llamar a una interfaz remoto . 270

CAPÍTULO 9. Almacenamiento de datos 273

9.1. Alternativas para guardar datos permanentemente en Android . 274

9.2. Añadiendo puntuaciones en Asteroides 275

9.3. Preferencias . 277

9.4. Accediendo a ficheros . 280

9.4.1. Sistema interno de ficheros . 281

9.4.2. Sistema de almacenamiento externo 283

9.4.2.1. Verificando acceso a la memoria externa 285

9.4.2.2. Almacenando ficheros específicos de tu aplicación

en el almacenamiento externo 286

9.4.2.3. Almacenando ficheros compartidos en el almacenamiento externo 287

9.4.3. Acceder a un fichero de los recursos 288

9.5. Trabajando con XML . 289

9.5.1. Procesando XML con SAX 290

9.5.2. Procesando XML con DOM . 296

9.6. Bases de datos . 301

9.6.1. Los métodos query() y rawQuery() 304

9.7. Utilizando la clase ContentProvider 305

9.7.1. Conceptos básicos 306

9.7.1.1. El modelo de datos . 306

9.7.1.2. Las URI . 306

9.7.2. Acceder a la información de un ContentProvider 307

9.7.2.1. Leer información de un ContentProvider . 308

9.7.2.2. Escribir información en un ContentProvider . 311

9.7.2.3. Borrar y modificar elementos de un ContentProvider . 312

9.7.3. Creación de un ContentProvider . 312

9.7.3.1. Definir la estructura de almacenamiento del ContentProvider . 313

9.7.3.2. Extendiendo la clase ContentProvider . 314

9.7.3.3. Declarar el ContentProvider en AndroidManifest.xml 318

9.7.4. Acceso a PuntuacionesProvider desde Asteroides . 319

CAPÍTULO 10. Internet: sockets, HTTP y servicios web 321

10.1. Comunicaciones en Internet mediante sockets 322

10.1.1. La arquitectura cliente/servidor 322

10.1.2. ¿Qué es un socket? 322

10.1.2.1. Sockets stream (TCP) . 323

10.1.2.2. Sockets datagram (UDP) . 323

10.1.3. Un ejemplo de un cliente / servidor de ECHO 324

10.1.4. Un servidor por sockets para las puntuaciones 326

10.2. La web y el protocolo HTTP 330

10.2.1. El protocolo HTTP 330

10.2.2. Versión 1.0 del protocolo HTTP . 332

10.2.3. Utilizando HTTP desde Android . 334

10.3. Servicios web . 339

10.3.1. Alternativas en los servicios web 339

10.3.1.1. Servicios web basados en SOAP 340

10.3.1.2. Servicios web basados en REST 341

10.3.2. Acceso a servicios web de terceros 345

10.3.3. Diseño e implantación de nuestro servicio web 349

10.3.3.1. Instalación del servidor de servicios web 349

10.3.3.2. Creación un servicio web en Eclipse 351

10.3.3.3. Explorando el servicio web desde Eclipse 354

10.3.3.4. Explorando el servicio web desde HTML 358

10.3.3.5. Utilizando el servicio web desde Asteroides 360

CAPÍTULO 11. Publicar Aplicaciones 365

11.1. Preparar y testear tu aplicación 366

11.1.1. Preparar la aplicación para distintos tipos de dispositivo 366

11.1.2. Testear la aplicación 368

11.2. Crear un certificado digital y firmar la aplicación 370

11.3. Publicar la aplicación 372

11.3.1. Publicar en Internet 372

11.3.2. Publicar en Google Play Store 373

11.4. Asteroides: detectar victoria y derrota 377

ANEXO A. Referencia Java 379

ANEXO B. Referencia: la clase View y sus descendientes 391


 
DESCARGA
 


 
Por kalileon123456789
 
 
Desde mi cuenta y sin publicidad    M E G A
 
 
 
 

Comentarios

Entradas populares de este blog

Así puedes cambiar el fondo de pantalla en Windows 10 sin activar

Descarga Windows 11: ya disponible la primera versión oficial

Controla el volumen del PC según el momento del día con Volume Concierge 2

Si te gusta este tipo de música, así debes configurar VLC