Nach dem Erstellen Ihres ersten Android-Projekts bietet Android Studio verschiedene Projektansichtsmodi. Der Project-Modus zeigt die tatsächliche physische Verzeichnisstruktur des Projekts und ist daher besonders hilfreich für Anfänger, um einen Gesamtüberblick zu erhalten. Im Folgenden wird basierend auf dem Project-Modus eine Analyse der wichtigsten Dateien und Ordner des Projekts durchgeführt.


Äußeres Verzeichnis (Projektstammverzeichnis)
1. app-Verzeichnis
Fast der gesamte Code und alle Ressourcendateien des Projekts sind in diesem Verzeichnis zusammengefasst. Während der Entwicklung arbeiten Sie hauptsächlich in diesem Verzeichnis.
2. gradle-Verzeichnis
Enthält die Konfigurationsdateien für das Gradle Wrapper. Der Vorteil der Verwendung des Gradle Wrappers besteht darin, dass Gradle nicht im Voraus manuell heruntergeladen werden muss. Basierend auf dem lokalen Cache entscheidet es automatisch, ob ein Download aus dem Internet erforderlich ist.
Android Studio aktiviert das Gradle Wrapper standardmäßig nicht. Um es zu aktivieren, navigieren Sie zu
File → Settings → Build, Execution, Deployment → Gradlein der Navigationsleiste.
3. .gitignore
Dient dazu, bestimmte Verzeichnisse oder Dateien von der Versionskontrolle auszuschließen. Wenn Sie diese Datei öffnen, finden Sie üblicherweise folgende Ausschlüsse:
*.iml
.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
/build
/captures
.externalNativeBuild
4. build.gradle
Dies ist das projektweite Gradle-Build-Skript. Normalerweise müssen Sie es nicht ändern.
5. gradle.properties
Eine globale Gradle-Konfigurationsdatei. Hier festgelegte Eigenschaften wirken sich auf alle Gradle-Kompilierungsskripte im Projekt aus.
6. build-Verzeichnis
Enthält Dateien, die während der Kompilierung automatisch generiert werden. Sie müssen sich darum nicht weiter kümmern.
7. MyApplication.iml
Eine Datei, die automatisch von IntelliJ IDEA (der Plattform, auf der Android Studio basiert) generiert wird, um das Projekt als IDEA-Projekt zu kennzeichnen. Bitte nicht manuell ändern.
8. gradlew und gradlew.bat
Werden verwendet, um Gradle-Befehle über die Befehlszeilenschnittstelle auszuführen:
gradlew: Für Linux-/Mac-Systemegradlew.bat: Für Windows-Systeme
9. local.properties
Gibt den Pfad zum lokalen Android-SDK an. Der Inhalt wird automatisch von Android Studio generiert. Es ist nicht nötig, diese Datei zu ändern, es sei denn, der SDK-Speicherort ändert sich.
sdk.dir=C\:\\Users\\YY\\AppData\\Local\\Android\\Sdk
10. settings.gradle
Dient dazu, alle in das Projekt eingebundenen Module anzugeben. Da derzeit nur das Modul app vorhanden ist, ist nur app in dieser Datei aufgeführt. Module werden normalerweise automatisch hinzugefügt, sodass manuelle Änderungen selten erforderlich sind.
Schwerpunkt: Detaillierte Erklärung des app-Verzeichnisses
Das app-Verzeichnis enthält alle wesentlichen Inhalte, die für die tatsächliche Entwicklung benötigt werden:
1. build
Ähnlich wie das äußere build-Verzeichnis enthält es Dateien, die während der Kompilierung automatisch generiert werden. Der Inhalt ist umfangreicher und komplexer, erfordert aber keine besondere Aufmerksamkeit.
2. libs
Speichert Drittanbieter-.jar-Dateien. JAR-Dateien in diesem Verzeichnis werden automatisch zum Build-Pfad hinzugefügt.
3. androidTest
Wird zum Schreiben von Android-Testfällen verwendet, um automatisierte Tests für das Projekt durchzuführen.
4. java
Der Ort, an dem sich der gesamte Java-/Kotlin-Code befindet. Wenn Sie das Verzeichnis erweitern, sehen Sie die automatisch generierte Datei MainActivity.

5. res
Ressourcenverzeichnis, das alle im Projekt verwendeten Bilder, Layouts, Zeichenfolgen und anderen Ressourcen enthält:
| Ressourcentyp | Speicherort |
|---|---|
| Bilder | drawable-Verzeichnis |
| Layouts | layout-Verzeichnis |
| Zeichenfolgen | values-Verzeichnis |
Die Ressourcen sind gut kategorisiert, sodass keine Unordnung entsteht.
6. AndroidManifest.xml
Dies ist die Konfigurationsdatei für das gesamte Android-Projekt. Alle vier Hauptkomponenten (Activity, Service, BroadcastReceiver, ContentProvider) müssen hier registriert werden. Außerdem können hier die für die App erforderlichen Berechtigungen deklariert werden.

7. test
Wird zum Schreiben von Unit-Testfällen verwendet und stellt eine weitere Methode für automatisierte Tests dar.
8. .gitignore
Schließt bestimmte Verzeichnisse oder Dateien innerhalb des app-Moduls von der Versionskontrolle aus. Die Funktion ist ähnlich wie beim äußeren .gitignore.

9. app.iml
Eine automatisch von IntelliJ IDEA generierte Datei. Sie müssen sich darum nicht kümmern oder sie ändern.
10. build.gradle (Modulebene)
Dies ist das Gradle-Build-Skript für das app-Modul. Es enthält zahlreiche, den Projektbuild betreffende Konfigurationen (wie Abhängigkeiten, Compile-Version, Anwendungs-ID usw.) und ist eine der Konfigurationsdateien, die während der Entwicklung am häufigsten geändert wird.
11. proguard-rules.pro
Gibt die Code-Obfuskierungsregeln für das Projekt an. Wenn Sie das Projekt offiziell paketieren und veröffentlichen, kann durch Aktivieren der Obfuskierung effektiv verhindert werden, dass der Code durch Dekompilierung geknackt wird.
Projektanalyse und Verzeichnisstruktur