Hello Android! (II)
Hola de nuevo, y bienvenidos a un nuevo artículo de Espai: Hello Android! (II)
Seguimos con Android, y como lo prometido es deuda hoy vamos a comenzar nuestra primera aplicación. Por otra parte el tema es bastante largo, más de lo que pensé en un principio, así que lo haremos en 2 partes. Pasamos de «trilogía» a «tetralogía».
Por cierto hoy tuve que venir en autobús, he tomado una foto del momento:
Hello Android! (II): Instalación de aplicaciones en Android
Hay 2 maneras de instalar las aplicaciones .
1. La primera, más segura y más mejor es instalarla desde Google Play. Para ello debemos publicar nuestra aplicación en la web que Google nos ofrece para ello: https://play.google.com/store?hl=es y así los usuarios podrán instalarla estén donde estén. Como antes de publicar nos obligan a formar digitalmente la app, el usuario puede estar seguro de que nuestro programa no es un virus y que cumple unos niveles de calidad.
2. Y ahora la rápida, Android tiene la posibilidad de usar aplicaciones «inseguras» es decir, directamente coger un fichero con extensión «.apk» e instalarlo en nuestro teléfono. La ventaja es que es muy rápido y no requiere publicarla en Google Play, y la desventaja que si la app no es nuestra, puede ser un pedazo de virus que ni la gripe española.
Cuidadín con instalar apps dudosas fuera de Google Play!
Sam Pratt – Gizmodo
Instalación del entorno de desarrollo
La instalación del IDE que vamos a utilizar es muy sencilla: Basta con descargar el ADT Bundle (Android Development Tools) aquí, descomprimir y buscar un programa dentro que se llama «Eclipse». Lo ejecutamos, y nos debería aparecer algo así*
*Los proyectos que aparecen a la izquierda no los tendréis,
y la ventana pueda cambiar un poco su aspecto.
Vamos ahora a crear el proyecto, esto será con File -> new -> project -> (ventana de selección) -> Android -> Android Application project
Click en «next», y en la siguiente pantalla ponemos estos valores:
Lo que hemos hecho en esta ventana es dar un nombre a la aplicación, también un nombre de paquete (com.espai.helloandroid) que nos servirá para identificar nuestra aplicación en Google Play, y definr qué dispositivos van a poder ejecutar nuestra app. En este caso, hemos dicho que la mínima versión será la 2.2, que está «pensado» para funcionar en la 4.3 y que vamos a generar nuestro programa usando las librerías de la 4.4 KitKat, la última disponible en la actualidad.
Hemos puesto Theme = none, para hacer el programa más sencillo y fácil de explicar.
Ahora pulsamos en «next» y en la siguiente pantalla, DESmarcamos las opciones «create custom launcher icon» y «create activity» de forma que solo quedará activo «Create project in workspace» y pulsamos Finish.
En este momento, nuestro proyecto tiene éste aspecto:
En el siguiente apartado veremos los elementos marcados en rojo.
Estructura de un programa Android
Esto merece una sección propia, vamos a ver las partes que componen un proyecto Android:
1. Carpeta src
Aquí podremos encontrar todo el código fuente que escribamos. Vamos, los ficheros .Java y nada más. Podremos estructurarlo en paquetes, en realidad esta parte no cambia mucho de cualquier proyecto que podáis hacer en Java.
2. Carpeta gen
Me la salto descaradamente. No tocaremos nunca esta carpeta, aun así hablaremos de ella al final.
3. Android 4.4 y Android private libraries:
Las librerías estándar de Android 4.4, y librerías extra para temas de compatibilidad con otras versiones. No las tenemos que modificar para nada.
4. Carpeta assets
Sirve para añadir recursos «extra» a nuestra app, como una página web, imágenes, vídeos o documentos.
5. Carpeta bin
Tampoco la tocaremos nunca, aquí se generan los .class y los binarios que compondrán nuestra aplicación.
6. Carpeta libs
Si nuestro proyecto utiliza librerías de terceros, o incluso nuestras que queremos reutilizar las añadiremos en aquí.
7. Carpeta res
Un programa Android se compone de código fuente (Java) y pantallas con imágenes, sonido, vídeo, ficheros de texto, xml… En esta carpeta guardaremos todo eso.
Ejemplos de recursos que añadiremos a nuestra aplicación:
Imágenes (drawable), textos (values) y pantallas (layout)
8. Fichero AndroidManifest.xml
Es el fichero de configuración «todopoderoso» de nuestra app Android. Aquí definiremos todo, desde las pantallas que componen nuestro programa a los servicios que utiliza, el estilo que queremos aplicar, los permisos que vamos a solicitar al usuario (por ejemplo, para conectar a Internet), los requisitos que debe cumplir el teléfono del usuario como tener GPS, y un largo etcétera.
9. Fichero Proguard-project.txt
Este ya no tiene que ver tanto con Android, es más bien una herramienta para ofuscar el código. Vamos, para ponerle difícil al espabilao (o espabilá) de turno que quiere copiarse nuestro código y ponerle su nombre… Eso sí, con una imagen de entrada hiper-mega-chula para que mole más y parezca diferente!
10. Fichero project.properties
Este fichero no lo tocaremos a mano, lo mantiene Eclipse y guarda información como, por ejemplo, la versión de Android para la que está diseñada nuestra app, y también para activar-desactivar la ofuscación de código (explicada en el punto 9).
Justo esto de la ofuscación sí se activa a mano en project.properties, es la excepción que confirma la regla.
La carpeta gen que nos hemos saltado contendrá ficheros .java. La «cosa curiosa» es que no seremos nosotros quienes escribamos este código, sino que Eclipse lo hace por nosotros. Sí, mola! pero antes de descorchar la botella de cava…
Tendremos que definir unos ficheros xml con información sobre el estilo, los textos de nuestra app y los iconos que vamos a usar, y a partir de ésa información es que Eclipse genera el código fuente. Igual os he chafado un poco el invento, pero eh, si se hiciera solo no tendríamos trabajo! Así que arriba ese ánimo.
¡Bueno menuda parrafada! Si habéis sobrevivido daros 3 puntos, por hoy lo dejaremos aquí y en la próxima entrega escribiremos el código de nuestra aplicación (la teoría era ésta, y ya está vista). Recordad daros un descanso, no os vaya a pasar como a Eusebio:
¡Buen fin de semana y saludos!