Estructura de carpetas de una aplicación android
SRC:
Se encuentra toda la lógica de aplicación, todas las clases programadas en JAVA. Dentro de ella puedes definir distintos paquetes, donde puedes dividir en capas tus reglas de negocio.
Android Library
Aquí se encuentran todas las librerías propias del SDK de android, dependiendo la versión elegida al crear el proyecto tendrá una versión u otra.
Directorios RES
Se encuentran todos los archivos con los recursos que usan la aplicación. Las imágenes, archivos de idiomas, estilos, etc.. Un pequeños listado de estos puede ser:
- drawable: En esta carpeta se almacenan los ficheros de imágenes (JPG o PNG) y descriptores de imágenes en XML.
- mipmap: Es una carpeta con la misma finalidad que res/drawable. La única diferencia es que si ponemos los gráficos en mipmap, estos no son rescaldados para adaptarlos a la densidad gráfica del dispositivo donde se ejecuta la aplicación, sino que se buscará en las subcarpetas el gráfico con la densidad más parecida y se utilizará directamente.
- layout: Contiene ficheros XML con vistas de la aplicación. Las vistas nos permitirán configurar las diferentes pantallas que compondrán la interfaz de usuario de la aplicación. Se utiliza un formato similar al HTML usado para diseñar páginas web. Se tratarán en el siguiente capítulo.
- menu:Ficheros XML con los menús de cada actividad. En el proyecto no hay ningún menú por lo que no se muestra esta carpeta.
- values: También utilizaremos ficheros XML para indicar valores usados en la aplicación, de esta manera podremos cambiarlos desde estos ficheros sin necesidad de ir al código fuente.
- anim: Contiene ficheros XML con animaciones de vistas (Tween). Las animaciones se describen al final del capítulo 4.
- animator: Contiene ficheros XML con animaciones de propiedades.
- xml: Otros ficheros XML requeridos por la aplicación.
- raw: Ficheros adicionales que no se encuentran en formato XML.
Directorio bin
Aquí se encuentran todos los archivos generados por la propia app. Como sabeis, android usa la máquina virtual dalvik, primero se traduce a los típicos archivos .class de java y posteriormente es traducido a los archivo .dex propios de android.
También esta el ejecutable de la aplicación "apk", sería el equivalente a los "exe" de windows. Es el archivo que deberías instalar en cualquier teléfono android para probar la aplicación.
Directorio gen
En esta carpeta esta el archivo R.class, éste contiene lo identificadores los recursos usados por tu proyecto: imágenes, layout, etc...
Directorio assests
Carpeta donde se encuentran los archivos auxiliares de tu aplicación: imágenes, audios, vídeos... la diferencia con los que se encuentran con la carpeta "RES", es que los archivos incluidos aquí no generarán un identificador dentro del archivo R.class anteriormente descrito.
Para usar estos archivos, en vez de referenciarlos por un ID, habría que usar la ruta física como cualquier otro archivo
Directorio lib
Aquí irán las librerías externas importados que necesites. Por ejemplo, si deseas meter publicidad en tu app, aquí ira la librería necesaria para ello.