EL GRAN LIBRO DE ANDROID 4ªEd.

EL GRAN LIBRO DE ANDROID 4ªEd.

  • Author: Tomás Gironés, Jesús
  • Publisher: Marcombo
  • Serie: El gran libro de
  • ISBN: 9788426715258
  • eISBN Pdf: 9788426715999
  • eISBN Epub: 9788426715999
  • Place of publication:  Barcelona , Spain
  • Year of publication: 2015
  • Year of digital publication: 2015
  • Month: June
  • Pages: 566
  • Language: Spanish
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, Google Glass o Wearable. 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 desarrollan dos aplicaciones de ejemplo: el mítico videojuego Asteroides y una aplicación de gestión de información personal, Mis Lugares*. Se comienza con una versión sencilla, que se irá completando capítulo a capítulo, para que incluya: fragmentos*, gráficos vectoriales y en mapa de bits, control mediante pantalla táctil y sensores, hilos con AsyncTask*, notificaciones, geo-localización*, mapas, multimedia, ficheros, XML, SQL, acceso a Internet, servicios Web, acceso a bases de datos en servidor PHP + MySQL* Así cómo publicar en Google Play y añadir anuncios*. El libro propone un aprendizaje activo, con actividades, muchas a través de Internet: Vídeo[Tutorial]: Más de 80 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. Comprar, instalar y utilizar aplicaciones de la App Store.
  • Título de la página
  • Copyright página
  • Dedication
  • Índice general
  • Lista de siglas y acrónimos
  • ¿Cómo leer este libro?
  • CAPÍTULO 1. Visión general y entorno de desarrollo
    • 1.1. ¿Qué hace que Android sea especial?
    • 1.2. Los orígenes
    • 1.3. Comparativa con otras plataformas
    • 1.4. Arquitectura de Android
      • 1.4.1. El núcleo Linux
      • 1.4.2. Runtime de Android
      • 1.4.3. Librerías nativas
      • 1.4.4. Entorno de aplicación
      • 1.4.5. Aplicaciones
    • 1.5. Instalación del entorno de desarrollo
      • 1.5.1. Instalación de la máquina virtual Java
      • 1.5.2. Instalación de ADT Bundle
      • 1.5.3. Instalación de Android Studio
      • 1.5.4. Instalación de los componentes por separado
      • 1.5.5. Creación de un dispositivo virtual Android (AVD)
    • 1.6. Las versiones de Android y niveles de API
      • 1.6.1. Las primeras versiones
      • 1.6.2. Cupcake
      • 1.6.3. Donut
      • 1.6.4. Éclair
      • 1.6.5. Froyo
      • 1.6.6. Gingerbread
      • 1.6.7. Honeycomb
      • 1.6.8. Ice Cream Sandwich
      • 1.6.9. Jelly Bean
      • 1.6.10. KitKat
      • 1.6.11. Android L Preview
      • 1.6.12. Elección de la plataforma de desarrollo
      • 1.6.13. Las librerías de compatibilidad (support library)
    • 1.7. Creación de un primer programa
    • 1.8. Ejecución del programa
      • 1.8.1. Ejecución en el emulador
      • 1.8.2. Ejecución en un terminal real
    • 1.9. Ficheros y carpetas de un proyecto Android
    • 1.10. Componentes de una aplicación
      • 1.10.1. Vista (View)
      • 1.10.2. Layout
      • 1.10.3. Actividad (Activity)
      • 1.10.4. Servicio (Service)
      • 1.10.5. Intención (Intent)
      • 1.10.6. Fragment
      • 1.10.7. Receptor de anuncios (Broadcast Receiver)
      • 1.10.8. Proveedores de contenido (Content Provider)
    • 1.11. Documentación y ApiDemos
      • 1.11.1. Dónde encontrar documentación
      • 1.11.2. La aplicación ApiDemos
    • 1.12. Depurar
      • 1.12.1. Depurar con Eclipse
      • 1.12.2. Depurar con mensajes Log
    • 1.13. Repaso de Java y la aplicación Mis Lugares
      • 1.13.1. La clase Lugar
      • 1.13.2. Tipos enumerados en Java
      • 1.13.3. Las colecciones en Java
  • CAPÍTULO 2. Diseño de la interfaz de usuario: vistas y layouts
    • 2.1. Creación de una interfaz de usuario por código
    • 2.2. Creación de una interfaz de usuario usando XML
      • 2.2.1. Edición visual de las vistas
      • 2.2.2. Los atributos de las vistas
    • 2.3. Layouts
    • 2.4. Una aplicación de ejemplo: Asteroides
    • 2.5. La aplicación: Mis Lugares
    • 2.6. Recursos alternativos
    • 2.7. Tipos de recursos y recursos del sistema
      • 2.7.1. Tipos de recursos
      • 2.7.2. Acceso a los recursos
      • 2.7.3. Recursos del sistema
    • 2.8. Estilos y temas
      • 2.8.1. Los estilos
        • Heredar de un estilo propio
      • 2.8.2. Los temas
    • 2.9. Uso práctico de vistas y layouts
      • 2.9.1. Acceder y modificar las propiedades de las vistas por código
    • 2.10. Uso de tabs (pestañas)
  • CAPÍTULO 3. Actividades e intenciones
    • 3.1. Creación de nuevas actividades
    • 3.2. Comunicación entre actividades
    • 3.3. Añadiendo un menú a una actividad
    • 3.4. La barra de acciones (ActionBar)
    • 3.5. Creando actividades en Mis Lugares
      • 3.5.1. Creando la actividad VistaLugar de Mis Lugares
      • 3.5.2. Creando la actividad EdicionLugar de Mis Lugares
    • 3.6. Creación y uso de iconos
    • 3.7. Añadiendo preferencias de usuario
      • 3.7.1. Organizando preferencias
      • 3.7.2. Cómo se almacenan las preferencias de usuario
      • 3.7.3. Accediendo a los valores de las preferencias
    • 3.8. Añadiendo una lista de puntaciones en Asteroides
    • 3.9. La vista ListView
      • 3.9.1. Un ListView que visualiza una lista de strings
      • 3.9.2. Un ListView que visualiza layouts personalizados
      • 3.9.3. Un ListView con nuestro propio adaptador
      • 3.9.4. Detectar una pulsación sobre un elemento de la lista
    • 3.10. Las intenciones
      • 3.10.1. Añadiendo fotografías en Mis Lugares
      • 3.10.2. La etiqueta <intent-filter>
  • CAPÍTULO 4. Gráficos en Android
    • 4.1. Clases para gráficos en Android
      • 4.1.1. Canvas
      • 4.1.2. Paint
        • Definición de colores
      • 4.1.3. Path
      • 4.1.4. Drawable
        • BitmapDrawable
        • GradientDrawable
        • TransitionDrawable
        • ShapeDrawable
        • AnimationDrawable
    • 4.2. Creación de una vista en un fichero independiente
    • 4.3. Creando la actividad principal de Asteroides
      • 4.3.1. La clase Gráfico
      • 4.3.2. La clase VistaJuego
      • 4.3.3. Introduciendo la nave en VistaJuego
    • 4.4. Representación de gráficos vectoriales en Asteroides
    • 4.5. Animaciones
      • 4.5.1. Animaciones de vistas
      • 4.5.2. Animaciones de propiedades
  • CAPÍTULO 5. Hilos de ejecución, pantalla táctil y sensores
    • 5.1. Uso de hilos de ejecución (threads)
      • 5.1.1. Introducción a los procesos e hilos de ejecución
      • 5.1.2. Hilos de ejecución en Android
      • 5.1.3. Creación de nuevos hilos con la clase Thread
      • 5.1.4. Introduciendo movimiento en Asteroides
      • 5.1.5. Ejecutar una tarea en un nuevo hilo con AsyncTask
      • 5.1.6. Mostrar un cuadro de progreso en un AsyncTask
      • 5.1.7. El método get() de AsyncTask
    • 5.2. Manejando eventos de usuario
      • 5.2.1. Escuchador de eventos de la clase View
      • 5.2.2. Manejadores de eventos
    • 5.3. El teclado
    • 5.4. La pantalla táctil
      • 5.4.1. Manejo de la pantalla táctil multi-touch
      • 5.4.2. Manejo de la nave con la pantalla táctil
    • 5.5. Gestures
      • 5.5.1. Creación y uso de una librería de gestures
      • 5.5.2. Añadiendo gestures a Asteroides
    • 5.6. Los sensores
      • 5.6.1. Un programa que muestra los sensores disponibles y sus valores en tiempo real
      • 5.6.2. Utilización de los sensores en Asteroides
    • 5.7. Introduciendo un misil en Asteroides
  • CAPÍTULO 6. Multimedia y ciclo de vida de una actividad
    • 6.1. Ciclo de vida de una actividad
      • 6.1.1. ¿Qué proceso se elimina?
      • 6.1.2. Guardando el estado de una actividad
    • 6.2. Utilizando multimedia en Android
    • 6.3. La vista VideoView
    • 6.4. La clase MediaPlayer
      • 6.4.1. Reproducción de audio con MediaPlayer
    • 6.5. Un reproductor multimedia paso a paso
    • 6.6. Introduciendo efectos de audio con SoundPool
    • 6.7. Grabación de audio
  • CAPÍTULO 7. Seguridad y posicionamiento
    • 7.1. Los tres pilares de la seguridad en Android
      • 7.1.1. Usuario Linux y acceso a ficheros
      • 7.1.2. El esquema de permisos en Android
      • 7.1.3. Permisos definidos por el programador en Android
    • 7.2. Localización
      • 7.2.1. Sistemas de geolocalización en dispositivos móviles
      • 7.2.2. La API de localización de Android
      • 7.2.3. Emulación del GPS con Eclipse
      • 7.2.4. Estrategias para escoger un proveedor de localización
    • 7.3. Google Maps (API v2)
      • 7.3.1. Obtención de una clave Google Maps
    • 7.4. Fragmentando los asteroides
  • CAPÍTULO 8. Servicios, notificaciones y receptores de anuncios
    • 8.1. Introducción a los servicios en Android
      • 8.1.1. Ciclo de vida de un servicio
      • 8.1.2. Permisos
    • 8.2. Un servicio para ejecución en segundo plano
      • 8.2.1. El método onStartCommand()
    • 8.3. Las notificaciones de la barra de estado
      • 8.3.1. Configurando tipos de avisos en las notificaciones
        • Asociar un sonido
        • Añadiendo vibración
        • Añadiendo parpadeo de LED
    • 8.4. Receptores de anuncios
      • 8.4.1. Receptor de anuncios registrado en AndroidManifest.xml
      • 8.4.2. Arrancar una actividad en una nueva tarea desde un receptor de anuncio
      • 8.4.3. Arrancar un servicio tras cargar el sistema operativo
    • 8.5. Un servicio en un nuevo hilo con IntentService
      • 8.5.1. La clase IntentService
    • 8.6. Un receptor de anuncios como mecanismo de comunicación
    • 8.7. Un servicio como mecanismo de comunicación entre aplicaciones
      • 8.7.1. Crear la interfaz en AIDL
      • 8.7.2. Implementar la interfaz
      • 8.7.3. Publicar la interfaz en un servicio
      • 8.7.4. Llamar a una interfaz remota
  • CAPÍTULO 9. Almacenamiento de datos
    • 9.1. Alternativas para guardar datos permanentemente en Android
    • 9.2. Añadiendo puntuaciones en Asteroides
    • 9.3. Preferencias
    • 9.4. Accediendo a ficheros
      • 9.4.1. Sistema interno de ficheros
      • 9.4.2. Sistema de almacenamiento externo
        • Verificando acceso a la memoria externa
        • Almacenando ficheros específicos de tu aplicación en el almacenamiento externo
        • Almacenando ficheros compartidos en el almacenamiento externo
      • 9.4.3. Acceder a un fichero de los recursos
    • 9.5. Trabajando con XML
      • 9.5.1. Procesando XML con SAX
      • 9.5.2. Procesando XML con DOM
    • 9.6. Bases de datos
      • 9.6.1. Los métodos query() y rawQuery()
      • 9.6.2. El método onUpgrade de la clase SQLiteOpenHelper
      • 9.6.3. Uso de bases de datos en Mis Lugares
      • 9.6.4. Adaptadores para bases de datos
        • Operaciones con bases de datos en Mis Lugares
        • Loaders y LoaderManager
      • 9.6.5. Bases de datos relacionales
    • 9.7. Content Provider
      • 9.7.1. Conceptos básicos
        • El modelo de datos
        • Las URI
      • 9.7.2. Acceder a la información de un ContentProvider
        • Leer información de un ContentProvider
        • Escribir información en un ContentProvider
        • Borrar y modificar elementos de un ContentProvider
      • 9.7.3. Creación de un ContentProvider
        • Definir la estructura de almacenamiento del ContentProvider
        • Extendiendo la clase ContentProvider
        • Declarar el ContentProvider en AndroidManifest.xml
      • 9.7.4. Acceso a PuntuacionesProvider desde Asteroides
  • CAPÍTULO 10. Internet: sockets, HTTP y servicios web
    • 10.1. Comunicaciones en Internet mediante sockets
      • 10.1.1. La arquitectura cliente/servidor
      • 10.1.2. ¿Qué es un socket?
        • Sockets stream (TCP)
        • Sockets datagram (UDP)
      • 10.1.3. Un ejemplo de un cliente/servidor de ECHO
      • 10.1.4. Un servidor por sockets para las puntuaciones
    • 10.2. La web y el protocolo HTTP
      • 10.2.1. El protocolo HTTP
      • 10.2.2. Versión 1.0 del protocolo HTTP
      • 10.2.3. Utilizando HTTP desde Android
      • 10.2.4. Uso de HTTP con AsyncTask
    • 10.3. Servicios web
      • 10.3.1. Alternativas en los servicios web
        • Servicios web basados en SOAP
        • Servicios web basados en REST
      • 10.3.2. Acceso a servicios web de terceros
      • 10.3.3. Creación de un servicio web con Axis2
        • Instalación del servidor de servicios web
        • Implementación del servicio web desde Eclipse
        • Explorando el servicio web desde Eclipse
        • Explorando el servicio web desde HTML
        • Utilizando el servicio web Axis2 desde Asteroides
      • 10.3.4. Un servicio web con Apache, PHP y MySQL
        • Utilizando el servicio web PHP desde Asteroides
        • Creación de un servicio web en un servidor de hosting
        • Utilizando AsyncTask de forma síncrona
      • 10.3.5. Comparativa sockets / servicios web
  • CAPÍTULO 11. Publicar aplicaciones
    • 11.1. Preparar y testear tu aplicación
      • 11.1.1. Preparar la aplicación para distintos tipos de dispositivo
      • 11.1.2. Testear la aplicación
    • 11.2. Crear un certificado digital y firmar la aplicación
    • 11.3. Publicar la aplicación
      • 11.3.1. Publicar en Internet
      • 11.3.2. Publicar en Google Play Store
    • 11.4. Añadiendo publicidad en tu aplicación con AdMob
    • 11.5. Asteroides: mostrar victoria y derrota
  • ANEXO A. Fragments
  • ANEXO B. Diálogos de fecha y hora
    • Clases para trabajar con fechas en Java
  • ANEXO C. Referencia Java
  • ANEXO D. Referencia de la clase View y sus descendientes
  • ANEXO E. Sufijos utilizados en recursos alternativos

SUBSCRIBE TO OUR NEWSLETTER

By subscribing, you accept our Privacy Policy