Todas las aplicaciones Android se componen de una estructura general; conformada por librerías de código, archivos de recursos y vistas, código fuente y Android Manifest. Para comprender mejor esta estructura, utilizaremos Android Studio y avanzaremos paso a paso por cada uno de los elementos. Para ello, crearemos una aplicación por defecto y avanzaremos siguiendo el asistente de configuración en Android Studio. Este se encargará de recopilar toda la información necesaria para crear nuestro proyecto.
En esta ventana configuraremos las plataformas y APIs que vamos a utilizar en nuestra aplicación. En este caso en particular, utilizaremos la API 15: Android 4.0.3 Ice Cream Sandwich, enfocada a teléfonos y tablets.
Para este ejemplo seleccionaremos Blank Activity. Así podremos observar de manera más clara la estructura de la app. De lo contrario, nos perderíamos entre los diferentes tipos de archivos y carpetas que generaría Android Studio si eligiéramos otra Actividad.
Dependiendo de la experiencia que tengas desarrollando para Android, recomiendo dejar los datos que ingresa el asistente de configuración por defecto.
Una vez terminado el asiste de configuración, veremos por primera vez la interfaz de Android Studio. Ahora nos enfocaremos en la estructura de nuestra aplicación que se encuentra al lado izquierdo de nuestra pantalla. Android Studio nos mostrará por defecto la pestaña Android. Esta se compone de varios elementos que están incluídos dentro de la carpeta app. Para visualizar toda la estructura del proyecto, debemos dar clic en esta pestaña para que se despliegue una serie de opciones. Ahí vamos a elegir Project. Ahora que ya podemos ver nuestro proyecto por completo, encontraremos los siguientes elementos:
Ahora vamos a dar clic en la carpeta app y observaremos que se compone de tres carpetas:
Hasta este punto sólo hemos navegado entre las carpetas de nuestro proyecto. Ahora es tiempo de indagar en la que nos mostrará la estructura de una aplicación para Android.
Esta carpeta contiene el código fuente de nuestra aplicación. Al explorar el contenido de MainActivity veremos que Android Studio generó automáticamente un código básico para nuestra actividad principal.
Esta carpeta contiene los archivos como imágenes, cadenas de texto, layouts, estilos, traducciones, menús e interfaz gráfica. Cada elemento esta subdividido en otras carpetas que detallaré a continuación:
Drawable significa mdpi en Android 1.5 y menores. Hasta la 1.5 sólo había Android con densidad media. Esto quiere decir que 1dip = 1pixel. Después se lanzó Android 1.6 que daba soporte para varias configuraciones de pantalla, tamaños, densidad, etc. En ese momento aparecieron: drawable-hdpi, drawable-mdip y drawable-ldpi.
Android Studio nos permite editar este archivo de dos formas. La primera es utilizando un editor estilo Drag and Drop como el que puedes ver abajo. Y el segundo método es utilizando el método text. Es decir, Android Studio nos permite editar nuestro archivo activity_main.xml a través de nodos XML.
[java] <xml><relativelayout xmlns:android=“http://schemas.android.com/apk/res/android” xmlns:tools=“http://schemas.android.com/tools” android:layout_width=“match_parent” android:layout_height=“match_parent” android:paddingleft=“16dp” android:paddingright=“16dp” android:paddingtop=“16dp” android:paddingbottom=“16dp” tools:context=".MainActivity"></relativelayout></xml> [/java] RelativeLayout: hace referencia a un contenedor principal que define un orden, características y secuencias de todos los elementos de nuestra actividad. Además, estas se ubicarán por referencia y no por valores absolutos. Así, las aplicaciones se ajustarán a cualquier tipo de pantalla. android:layout_width=“match_parent” : es el ancho del layout dentro de la actividad. Al utilizar match_parent se facilita el ajuste del ancho de la pantalla en cualquier dispositivo. android:layout_height=“match_parent”: dimensión vertical o largo del layout. Dentro de la actividad se utiliza match_parent para facilitar el ajuste vertical de pantalla en cualquier dispositivo. android:paddingLeft, Right, Top y Bottom:
Son los espacios laterales y verticales entre el contorno del layout. Su valor está direccionado a dimens.xml dentro de la carpeta values. Este archivo contiene nodos xml de tipo dimensióncon valores densitiy-indepent en pixeles (dp). tools:context=".MainActivity" : es el nombre del archivo que contiene la actividad donde el layout con las distintas características será acogido.
Esta es la estructura de un proyecto en Android Studio y la arquitectura básica de una aplicación para Android. En un inicio, manejarla puede costar algo de trabajo y mucho tiempo de dedicación. Pero el tiempo invertido valdrá la pena cuando comiences a generar tus aplicaciones y a venderlas en la Google Play Store. Si quieres saber más sobre Android Studio y comenzar a crear tus primeras apps para el sistema operativo móvil más usado en el mundo; no te pierdas el Curso de Programación en Android de Platzi.