Android 4 : développer ma première application Architecture du projet

En ouvrant le projet, vous allez découvrir l'architecture d'une application Android (voir ci-contre).

architecture d'une application android.
Architecture d'une application Android. © Eni

Une application Android se compose de plusieurs dossiers :

- src : ce dossier contient les sources de votre application (Activité, Service, Code métier, etc.).

- gen : ce dossier est le résultat de la génération des fichiers présents dans le dossier res (Ressources). Le contenu du dossier Ressources est précompilé et généré dans le dossier gen afin que vous puissiez facilement les utiliser dans votre code source. Ce dossier contient aussi le fichier BuildConfig permettant de gérer l'affichage du log en mode debug et développement, uniquement grâce à une constante définie dans ce fichier.

- assets : ce dossier stocke des données ou fichiers que vous utilisez dans votre application. Ces fichiers ne sont ni dépendants de la résolution, ni de la langue du téléphone et leur format est conservé (pas de précompilation). Les fichiers stockés dans le dossier assets sont en lecture seule.

- bin : ce dossier sert à stocker les binaires et fichiers classes générés.

- libs : contient les différentes bibliothèques utilisées par une application.

- res : ce dossier sert à stocker toutes les ressources que vous utilisez dans votre application. Vous pouvez avoir des ressources différentes en fonction de la résolution, de l'orientation ou de la langue du téléphone. Les ressources sont précompilées et ajoutées au fichier R.java (cf. chapitre Création d'interfaces simples - Les ressources).

- drawable-xxx : contient toutes les images dans les différentes résolutions.

- layout-xxx : contient toutes les vues (modes portrait et paysage).

- values-xxx : contient tous les fichiers contenant des données ou des valeurs (strings, arrays, colors, dimensions, styles, etc.).

- menus : contient les barres d'actions et menus de votre application.

- raw-xxx : contient des fichiers non compilables (fichier audio, vidéo, etc.).

- AndroidManifest.xml : c'est le fichier de description de votre application.

- proguard.cfg : permet de définir le système d'offuscation et d'optimisation de votre code utilisé par ProGuard.

- project.properties : contient des informations sur le projet (version, bibliothèques référencées).