El gran libro de programación avanzada con Android. José Enrique Amaro Soriano
La interfaz de usuario
A.1. Orientación de una actividad
A. 2. Dimensiones de la pantalla
Complementos de Java
B. 1. Métodos con número variable de parámetros
B.4. Definición de una clase con tipos genéricos
Versiones de Android
1. INTRODUCCIÓN
En mi primer libro sobre programación en Android, titulado Android: programación de dispositivos móviles a través de ejemplos (que denominaré abreviadamente Android a partir de ahora) y publicado por la editorial Marcombo, presentaba las técnicas esenciales para iniciarse rápidamente en la programación del sistema, enfatizando en aplicaciones de cálculo numérico y gráficos. En este segundo libro introduzco técnicas más avanzadas (aunque no necesariamente más complicadas) para realizar programas que se ejecutarán en un smartphone, tablet o cualquier otro dispositivo con el sistema operativo Android. La obra está dirigida a no especialistas y supone un acercamiento genuinamente práctico al sistema Android. No se requieren conocimientos profundos de Java. El apéndice A de mi primer primer libro contiene una introducción al lenguaje Java específico para Android, suficiente para seguir este segundo. Sin embargo, no es necesario haberlo leído para seguir y entender este, siempre que se posean las nociones básicas para crear una actividad con Android.
El material contenido en esta obra se plantea como una colección de ejemplos escritos expresamente para ilustrar alguna técnica particular de Android. Los ejemplos son programas completos, pero breves, que permitirán al lector minimizar las dificultades que puedan surgir para comprender la materia. La idea es que, después de trabajar los programas simples de este libro, el lector sea capaz de escribir sus propios programas y de explorar por sí mismo el sistema. Todos los ejemplos han sido probados en un dispositivo o en el emulador, y funcionan correctamente en las versiones de Android 2.1 (Eclair) y posteriores (ver Apéndice A para una lista de las versiones de Android). El código fuente de todos los programas se puede descargar de la página web del autor: http://www.ugr.es/local/amaro/android
La selección del material no es ni mucho menos exhaustiva. Las librerías de Android contienen numerosas clases y métodos para realizar casi cualquier tarea que el lector pueda imaginar, y otras que ni se le ocurriría que pudieran realizarse con un artefacto tan pequeño como un teléfono. La principal fuente de documentación y recursos de Android es la página web oficial de Android developers y los foros especializados que se encuentran en Internet, donde el lector iniciado puede profundizar y ampliar sus conocimientos sobre el sistema Android. Sin embargo, la vasta extensión de sus librerías hace que, al contrario que con otros lenguajes, introducirse en Android no sea tarea fácil para los no iniciados. Con este libro se pretende contribuir a soslayar las dificultades y acercar este novedoso sistema al público en general. Profesores, estudiantes, científicos, ingenieros, técnicos y público en general encontrarán ideas útiles que podrán aplicar en sus trabajos, en sus tareas cotidianas o simplemente como entretenimiento, usando su smartphone o su tablet Android como herramienta.
Acerca de los ejemplos
El material didáctico de este libro consiste en más de ochenta ejemplos. Cada ejemplo se compone de una aplicación de Android completa con sus correspondientes capturas de pantalla. Los códigos fuente están disponibles en la página web de la editorial Marcombo y en la del autor. Cada ejemplo se descarga en forma de una carpeta comprimida con ZIP, que contiene un proyecto de Eclipse con todos los archivos de la aplicación. Dicha carpeta se puede importar o descomprimir directamente desde el programa Eclipse.
Para importar un proyecto de Android desde Eclipse, se pueden seguir las siguientes instrucciones:
1 Seleccionar Import en el menú File. Aparecerá una lista de opciones.
2 Seleccionar Existing projects into Workspace y pulsar next.
3 Marcar la opción Select archive file y pulsar Browse.
4 Seleccionar el archivo comprimido con el proyecto y pulsar aceptar.
Si, tras importar un proyecto en Eclipse, se produjera un error de compilación del tipo Compiler compliance level, debemos cambiar la versión de compilación de Java en las propiedades del proyecto. Para ello, pulsaremos con el boton derecho sobre el proyecto en Eclipse y seleccionaremos properties. Se abrirá una ventana con las propiedades. Iremos a la sección del compilador de Java y marcaremos Enable Project-specific settings. De este modo ya podremos modificar el valor aignado al Compiler compliance level.
Cómo localizar el fichero correspondiente a un ejemplo específico
Cada uno de los más de ochenta ejemplos de este libro contiene una actividad principal de la que se infiere el nombre del proyecto, y de ahí el nombre del fichero ZIP. Por ejemplo, si una actividad se llama Acelerometro o AcelerometroActivity, el archivo con el proyecto se llamará seguramente Aceleromero.zip, o un nombre parecido. Alternativamente, podemos leer el nombre del proyecto en las capturas de pantalla de los ejemplos, puesto que la barra superior de la ventana contiene el título de la actividad.
Acerca de los acentos
Los nombres de las variables y clases de Java, actividades y ficheros de recursos no pueden contener acentos ni otros caracteres como la letra ñ. Aunque hemos procurado escribir correctamente las tildes en las palabras en castellano en el texto, esto no es posible cuando se refieren a nombres de variables o ficheros. Tampoco se recomienda usar acentos en los nombres que designan a las columnas o tablas de una base de datos. El lector queda advertido de que, cuando encuentre una palabra castellana escrita incorrectamente sin tilde, ésta se refiere seguramente a uno de estos casos. De la misma manera, seguimos la norma de no utilizar acentos en los nombres de los proyectos.
Agradecimientos
Quisiera expresar mi agradecimiento, en primer lugar, a Jeroni Boixareu, de la editorial Marcombo, por sus sugerencias y apoyo para realizar este proyecto. En segundo lugar, a los lectores de mi primer libro de Android que me han escrito con ideas y peticiones. Algunas las he procurado incluir en esta obra. Gracias también a los miembros del grupo de Física Nuclear y Hadrónica de la Universidad de Granada, principalmente a Enrique Ruiz Arriola, Rodrigo Navarro Pérez y Nacho Ruiz Simó, que pacientemente atendieron a mis demostraciones con el teléfono de muchos de los ejemplos de este libro. Sus comentarios, durante los cafés, supusieron un valioso feedback. También es pertinente agradecer aquí el proyecto de investigación del Ministerio FIS2011-2414. Sin lugar a dudas, Android se integrará como herramienta en nuestra vida cotidiana y también en nuestro trabajo científico. Parte del material de este libro se desarrolló con la idea de aplicarlo en nuestras labores investigadoras. No olvido al Departamento de Física Atómica, Molecular y Nuclear de la Universidad de Granada, que ha facilitado la utilización de sus infraestructuras. Finalmente, le agradezco a mi familia su entusiasmo