EL GRAN LIBRO DE ANDROID

EL GRAN LIBRO DE ANDROID

TOMÁS GIRONÉS, JESUS

28,20 €
IVA inclós
Sense stock. Consulteu disponibilitat
Editorial:
Marcombo
Any d'edició:
2013
Matèria
Sistemas operativos
ISBN:
978-84-267-1976-8
Pàgines:
430
Enquadernació:
Rústica
28,20 €
IVA inclós
Sense stock. Consulteu disponibilitat
Afegir a favorits

Lista de acrónimos ............................................................................................. xv
¿Cómo leer este libro? ..................................................................................... xvii
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............................................................................. 27
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 la máquina virtual Java ................................................ 30
1.5.2. Instalación de Eclipse ......................................................................... 30
1.5.3. Instalar Android SDK de Google ......................................................... 32
1.5.4. Instalación del plug-in Android para Eclipse (ADT) ............................. 32
1.5.5. Creación de un dispositivo virtual Android (AVD) ............................... 34
1.6. Las versiones de Android y niveles de API ............................................... 38
1.6.1. Las primeras versiones ....................................................................... 38
1.6.2. Cupcake ............................................................................................... 39
1.6.3. Donut ................................................................................................... 39
1.6.4. Éclair .................................................................................................... 39
1.6.5. Froyo .................................................................................................... 40
1.6.6. Gingerbread ......................................................................................... 40
1.6.7. Honeycomb .......................................................................................... 41
1.6.8. Ice Cream Sandwich ........................................................................... 42
1.6.9. Jelly Bean ............................................................................................ 43
1.6.10. Elección de la plataforma de desarrollo ............................................. 43
1.7. Creación de un primer programa .............................................................. 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 .............................................................. 50
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 ..................................................................... 56
1.12. Depurar ..................................................................................................... 58
1.12.1. Depurar con Eclipse ........................................................................... 58
1.12.2. Depurar con mensajes Log................................................................. 59
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.2.2. Los atributos de las vistas ................................................................... 70
2.3. Layouts ...................................................................................................... 71
2.4. Una aplicación de ejemplo: Asteroides ..................................................... 77
2.5. Recursos alternativos ................................................................................ 79
2.6. Tipos de recursos y recursos del sistema ................................................. 83
2.6.1. Tipos de recursos ................................................................................ 84
2.6.2. Acceso a los recuros ........................................................................... 86
2.6.3. Recusros del sistema .......................................................................... 86
2.7. Estilos y Temas ......................................................................................... 87
2.7.1. Los estilos ............................................................................................ 88
2.7.1.1. Heredar de un estilo propio ............................................................... 88
2.7.2. Los temas ............................................................................................ 89
2.8. Uso práctico de Vistas y Layouts .............................................................. 90
2.8.1. Acceder y modificar las propiedades de las vistas por código ............ 92
2.9. Uso de TabHost ........................................................................................ 94
2.9.1. Uso de la etiqueta en Layouts ............................................ 97
CAPÍTULO 3. Actividades e Intenciones .......................................................... 99
3.1. Creación de nuevas actividades ............................................................. 100
3.2. Comunicación entre actividades ............................................................. 105
3.3. Añadiendo un menú ................................................................................ 107
3.4. Creación y uso de iconos ........................................................................ 109
3.5. Añadiendo preferencias de usuario ........................................................ 112
3.5.1. Organizando preferencias ................................................................. 115
3.5.2. Como se almacenan las preferencias de usuario ............................. 117
3.5.3. Accediendo a los valores de las preferencias ................................... 118
3.6. Añadiendo una lista de puntaciones en Asteroides ................................ 118
3.7. La vista ListView ...................................................................................... 121
3.7.1. Un ListView que visualiza una lista de Strings .................................. 123
3.7.2. Un ListView que visualiza Layouts personalizados ........................... 124
3.7.3. Un ListView con nuestro propio adaptador ....................................... 126
3.7.4. Detectar una pulsación sobre un elemento de la lista ....................... 128
3.8. Las Intenciones ....................................................................................... 128
3.8.1. La etiqueta ................................................................... 134
CAPÍTULO 4. Gráficos en Android ................................................................ 137
4.1. Clases para gráficos en Android ............................................................. 138
4.1.1. Canvas............................................................................................... 138
4.1.2. Paint ................................................................................................... 140
4.1.2.1. Definición de colores........................................................................ 141
4.1.3. Path ................................................................................................... 143
4.1.4. Drawable............................................................................................ 145
4.1.4.1. BitmapDrawable .............................................................................. 146
4.1.4.2. GradienDrawable ............................................................................. 147
4.1.4.3. TransitionDrawable ......................................................................... 148
4.1.4.4. ShapeDrawable ................................................................................ 148
4.1.4.5. AnimationDrawable ......................................................................... 149
4.2. Creación de una vista en un fichero independiente ................................ 150
4.3. Creando la actividad principal de Asteroides .......................................... 154
4.3.1. La clase Gráfico ................................................................................. 155
4.3.2. La clase VistaJuego .......................................................................... 157
4.3.3. Introduciendo la nave en VistaJuego ................................................ 158
4.4. Representación de gráficos vectoriales en Asteroides ........................... 160
4.5. Animaciones ............................................................................................ 163
4.5.1. Animaciones Tween .......................................................................... 163
4.5.2. Animaciones de propiedades ............................................................ 166
CAPÍTULO 5. Entradas en Android: teclado, pantalla táctil y sensores ..... 169
5.1. Uso de hilos de ejecución (Threads) ....................................................... 170
5.1.1. Introducción a los procesos e hilos de ejecución .............................. 170
5.1.2. Hilos de ejecución en Android ........................................................... 171
5.1.3. Introduciendo movimientos en Asteroides ........................................ 171
5.2. Manejando eventos de usuario ............................................................... 174
5.2.1. Escuchador de eventos ..................................................................... 175
5.2.2. Manejadores de eventos ................................................................... 176
5.3. El teclado ................................................................................................. 176
5.4. La pantalla táctil ...................................................................................... 179
5.4.1. Manejo de la pantalla táctil con multi-touch ...................................... 182
5.4.2. Manejo de la nave con la pantalla táctil ............................................ 184
5.5. Gestures .................................................................................................. 186
5.5.1. Creación y uso de una librería de gestures....................................... 187
5.5.2. Añadiendo gestures a Asteroides ...................................................... 191
5.6. Los sensores ........................................................................................... 192
5.6.1. Un programa que muestra los sensores disponibles
y sus valores en tiempo real .............................................................. 197
5.6.2. Utilización de los sensores en Asteroides ......................................... 200
5.7. Introduciendo un misil en Asteroides ...................................................... 201
CAPÍTULO 6. Multimedia y ciclo de vida de una actividad ......................... 205
6.1. Ciclo de vida de una actividad ................................................................ 206
6.1.1. ¿Qué proceso se elimina? ................................................................. 212
6.1.2. Guardando el estado de una actividad .............................................. 215
6.2. Utilizando multimedia en Android............................................................ 217
6.3. La vista VideoView .................................................................................. 219
6.4. La clase MediaPlayer .............................................................................. 221
6.4.1. Reproducción de audio con MediaPlayer .......................................... 222
6.5. Un reproductor multimedia paso a paso ................................................. 223
6.6. Introduciendo efectos de audio con SoundPool ..................................... 229
6.7. Grabación de audio ................................................................................. 232
CAPÍTULO 7. Seguridad y posicionamiento .................................................. 237
7.1. Los tres pilares de la seguridad en Android ............................................ 238
7.1.1. Usuario Linux y acceso a ficheros ..................................................... 239
7.1.2. El esquema de permisos en Android ................................................. 239
7.1.3. Permisos definidos por el usuario en Android ................................... 241
7.2. Localización............................................................................................. 245
7.2.1. Emulación del GPS con Eclipse ........................................................ 250
7.3. Google Maps (API v2) ............................................................................. 251
7.3.1. Obtención de una clave Google Maps .............................................. 252
7.4. Fragmentando los asteroides .................................................................. 260
CAPÍTULO 8. Servicios, notificaciones y receptores de anuncios ................ 263
8.1. Introducción a los servicios en Android ................................................... 264
8.1.1. Ciclo de vida de un servicio. .............................................................. 265
8.1.2. Permisos ............................................................................................ 267
8.2. Un servicio para ejecución en segundo plano. ....................................... 267
8.2.1. Los métodos onStartCommad() y onStart() ...................................... 270
8.3. Las notificaciones de la barra de estado ................................................. 272
8.3.1. Configurando tipos de avisos en las notificaciones ........................... 274
8.3.1.1. Asociar un sonido ............................................................................. 274
8.3.1.2. Añadiendo vibración ........................................................................ 275
8.3.1.3. Añadiendo parpadeo de LED ........................................................... 275
8.4. Receptores de anuncios.......................................................................... 276
8.4.1. Receptor de anuncios registrado en AndroidManifest.xml ................ 277
8.4.2. Arrancar un servicio tras cargar el sistema operativo ....................... 282
8.5. Un servicio en un nuevo hilo con IntentService ...................................... 284
8.5.1. La clase IntentService ....................................................................... 287
8.6. Un receptor de anuncio como mecanismo de comunicación ................. 288
8.7. Un servicio como mecanismo de comunicación entre aplicaciones ....... 290
8.7.1. Crear la interfaz en AIDL ................................................................... 291
8.7.2. Implementar la interfaz ...................................................................... 292
8.7.3. Publicar la interfaz en un servicio ...................................................... 293
8.7.4. Llamar a una interfaz remoto ............................................................. 294
CAPÍTULO 9. Almacenamiento de datos ........................................................ 297
9.1. Alternativas para guardar datos permanentemente en Android ............. 298
9.2. Añadiendo puntuaciones en Asteroides .................................................. 299
9.3. Preferencias ............................................................................................ 301
9.4. Accediendo a ficheros ............................................................................. 304
9.4.1. Sistema interno de ficheros ............................................................... 305
9.4.2. Sistema de almacenamiento externo ................................................ 307
9.4.2.1. Verificando acceso a la memoria externa ........................................ 309
9.4.2.2. Almacenando ficheros específicos de tu aplicación
en el almacenamiento externo .......................................................... 310
9.4.2.3. Almacenando ficheros compartidos en el
almacenamiento externo .................................................................. 311
9.4.3. Acceder a un fichero de los recursos ................................................ 312
9.5. Trabajando con XML ............................................................................... 313
9.5.1. Procesando XML con SAX ................................................................ 314
9.5.2. Procesando XML con DOM ............................................................... 320
9.6. Bases de datos ........................................................................................ 325
9.6.1. Los métodos query() y rawQuery() .................................................... 328
9.6.2. Bases de datos relacionales .............................................................. 329
9.6.3. El método onUpgrade de la clase SQLiteOpenHelper ...................... 3329.7. Utilizando la clase ContentProvider ........................................................ 333
9.7.1. Conceptos básicos ............................................................................ 334
9.7.1.1. El modelo de datos ........................................................................... 334
9.7.1.2. Las URI ............................................................................................ 334
9.7.2. Acceder a la información de un ContentProvider .............................. 335
9.7.2.1. Leer información de un ContentProvider ......................................... 336
9.7.2.2. Escribir información en un ContentProvider ................................... 339
9.7.2.3. Borrar y modificar elementos de un ContentProvider ..................... 340
9.7.3. Creación de un ContentProvider ....................................................... 340
9.7.3.1. Definir la estructura de almacenamiento del ContentProvider ....... 341
9.7.3.2. Extendiendo la clase ContentProvider ............................................. 342
9.7.3.3. Declarar el ContentProvider en AndroidManifest.xml .................... 346
9.7.4. Acceso a PuntuacionesProvider desde Asteroides ........................... 347
CAPÍTULO 10. Internet: sockets, HTTP y servicios web ............................... 349
10.1. Comunicaciones en Internet mediante sockets ...................................... 350
10.1.1. La arquitectura cliente/servidor ........................................................ 350
10.1.2. ¿Qué es un socket? .......................................................................... 350
10.1.2.1. Sockets stream (TCP) ..................................................................... 351
10.1.2.2. Sockets datagram (UDP) ............................................................... 351
10.1.3. Un ejemplo de un cliente / servidor de ECHO .................................. 352
10.1.4. Un servidor por sockets para las puntuaciones................................ 356
10.2. La web y el protocolo HTTP .................................................................... 360
10.2.1. El protocolo HTTP ............................................................................ 360
10.2.2. Versión 1.0 del protocolo HTTP ....................................................... 362
10.2.3. Utilizando HTTP desde Android ....................................................... 364
10.3. Servicios web .......................................................................................... 369
10.3.1. Alternativas en los servicios web ...................................................... 369
10.3.1.1. Servicios web basados en SOAP .................................................... 370
10.3.1.2. Servicios web basados en REST ..................................................... 371
10.3.2. Acceso a servicios web de terceros ................................................. 375
10.3.3. Diseño e implantación de nuestro servicio web ............................... 378
10.3.3.1. Instalación del servidor de servicios web ...................................... 37910.3.3.2. Creación un servicio web en Eclipse ............................................. 381
10.3.3.3. Explorando el servicio web desde Eclipse ..................................... 384
10.3.3.4. Explorando el servicio web desde HTML ...................................... 387
10.3.4. Utilizando el servicio web desde Asteroides .................................... 389
CAPÍTULO 11. Publicar Aplicaciones ............................................................. 395
11.1. Preparar y testear tu aplicación .............................................................. 395
11.1.1. Preparar la aplicación para distintos tipos de dispositivo ................. 396
11.1.2. Testear la aplicación ......................................................................... 398
11.2. Crear un certificado digital y firmar la aplicación .................................... 400
11.3. Publicar la aplicación ............................................................................... 402
11.3.1. Publicar en Internet ........................................................................... 402
11.3.2. Publicar en Google Play Store ......................................................... 403
11.4. Asteroides: detectar victoria y derrota ..................................................... 406
ANEXO A. Referencia Java .............................................................................. 409
ANEXO B. Referencia: la clase View y sus descendientes .............................. 421

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 telefono 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, sistemas empotrados 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. El libro propone un aprendizaje activo, con actividades, muchas a traves de Internet: -poli[Media] Más de 60 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? Jesus Tomás es doctor en informática, profesor titular del Departamento de Comunicaciones en la Universidad Politecnica de Valencia. Trabaja en multiples 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 para empresas.

Articles relacionats

  • LOS 150 MEJORES EJEMPLOS DE COPIAR Y PEGAR
    FORTEA NAVARRO,PEDRO
    Adéntrese con éxito en los lenguajes de programaciónPHP8, JS y HTML5 con 150 ejemplos prácticosSi quiere dar sus primeros pasos o mejorar sus conocimientos en el mundo de PHP8, JS y HTML5, y perfeccionar sus trabajos como desarrollador, este libro será su gran aliado. En él encontrará desde ejemplos de código sencillos, para afianzar los conceptos básicos, hasta una amplia gama...
    Últim exemplar disponible

    19,40 €

  • CUADERNO DEL ALUMNO. MONTAJE Y VERIFICACIÓN DE COMPONENTES (UF0861). CERTIFICADO
    FRANCISCO CARVAJAL PALOMARES
    Editorial CEP pertenece a GrupoCEP y está dedicada desde hace más de 30 años a la edición de textos de oposiciones y manuales de formación. Los contenidos están elaborados por especialistas que cuentan con una gran experiencia en la formación en cada una de las especialidades. Editorial CEP ha vendido a lo largo de su historia más de dos millones ...
    Sense stock. Consulteu disponibilitat

    10,00 €

  • CUADERNO DEL ALUMNO. INSTALACIÓN Y CONFIGURACIÓN DE PERIFÉRICOS MICROINFORMÁTICO
    FRANCISCO CARVAJAL PALOMARES
    Editorial CEP pertenece a GrupoCEP y está dedicada desde hace más de 30 años a la edición de textos de oposiciones y manuales de formación. Los contenidos están elaborados por especialistas que cuentan con una gran experiencia en la formación en cada una de las especialidades. Editorial CEP ha vendido a lo largo de su historia más de dos millones ...
    Sense stock. Consulteu disponibilitat

    5,00 €

  • CUADERNO DEL ALUMNO. REPARACIÓN Y AMPLIACIÓN DE EQUIPOS Y COMPONENTES HARDWARE M
    FRANCISCO CARVAJAL PALOMARES
    Editorial CEP pertenece a GrupoCEP y está dedicada desde hace más de 30 años a la edición de textos de oposiciones y manuales de formación. Los contenidos están elaborados por especialistas que cuentan con una gran experiencia en la formación en cada una de las especialidades. Editorial CEP ha vendido a lo largo de su historia más de dos millones ...
    Sense stock. Consulteu disponibilitat

    7,00 €

  • CUADERNO DEL ALUMNO. RESOLUCIÓN DE AVERÍAS LÓGICAS EN EQUIPOS MICROINFORMÁTICOS
    FRANCISCO CARVAJAL PALOMARES
    Editorial CEP pertenece a GrupoCEP y está dedicada desde hace más de 30 años a la edición de textos de oposiciones y manuales de formación. Los contenidos están elaborados por especialistas que cuentan con una gran experiencia en la formación en cada una de las especialidades. Editorial CEP ha vendido a lo largo de su historia más de dos millones ...
    Sense stock. Consulteu disponibilitat

    5,00 €

  • CUADERNO DEL ALUMNO. REPARACIÓN DE IMPRESORAS (UF0865). CERTIFICADOS DE PROFESIO
    FRANCISCO CARVAJAL PALOMARES
    Editorial CEP pertenece a GrupoCEP y está dedicada desde hace más de 30 años a la edición de textos de oposiciones y manuales de formación. Los contenidos están elaborados por especialistas que cuentan con una gran experiencia en la formación en cada una de las especialidades. Editorial CEP ha vendido a lo largo de su historia más de dos millones ...
    Sense stock. Consulteu disponibilitat

    7,00 €

Altres llibres de l'autor

  • EL GRAN LIBRO DE ANDROID 7ªED.
    TOMÁS GIRONÉS, JESUS
    Android es la plataforma libre para el desaÊrrollo de aplicaciones moviles creada por Google. En la actualidad se ha convertido en la plataforma lider frente a otras como iPhone o Windows Phone. Las aplicaciones Android estan ampliando su rango de influencia a nuevos dispositivos tales como tabletas, Internet de las cosas, Wearables, TVs o automoviles. Este libro pretende ser ...
    Sense stock. Consulteu disponibilitat

    23,90 €

  • EL GRAN LIBRO DE ANDROID 5ª
    TOMÁS GIRONÉS, JESUS
    Android es la plataforma libre para el desarrollo de aplicaciones móviles creada pon 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, sistemas empotrados, TV, Wearables o Google Glass. Este libro pretende ser una ...
    Esgotat

    29,60 €