Ein Projekt in Android Studio enthält alles, was die Arbeitsbereich für eine App, vom Quellcode und Assets bis zum Testen von Code und Erstellen Konfigurationen.
Wenn Sie ein neues Projekt starten, erstellt Android Studio die für alle Ihre Dateien und macht sie im Projekt in Android Studio. Wählen Sie zum Öffnen des Fensters Ansicht > Tool-Fenster > Projekt.
Diese Seite bietet einen Überblick über die Hauptkomponenten Ihres Projekts.
Module
Ein Modul ist eine Sammlung von Quelldateien und Build-Einstellungen, mit denen Sie Ihr Projekt in einzelne Funktionseinheiten unterteilen können. Ihr Projekt kann ein oder mehrere Module haben und ein Modul kann ein anderes als Abhängigkeit verwenden. Sie können jedes Modul unabhängig erstellen, testen und debuggen.
Zusätzliche Module sind nützlich, wenn Sie Codebibliotheken in Ihrem oder wenn Sie unterschiedliche Code- und Ressourcensätze z. B. Telefone und Wearables, behalten aber alle die im selben Projekt arbeiten und Code gemeinsam nutzen.
Um Ihrem Projekt ein neues Modul hinzuzufügen, klicken Sie auf File (Datei) > Neu > Neues Modul.
Android Studio bietet verschiedene Arten von Modulen:
- Android-App-Modul
- Bietet einen Container für den Quellcode, die Ressourcendateien und die Einstellungen auf App-Ebene Ihrer App, z. B. die Build-Datei auf Modulebene und die Android-Manifestdatei. Wann?
Wenn Sie ein neues Projekt erstellen, heißt das Standard-App-Modul „app“.
Android Studio-Angebote die folgenden Arten von App-Modulen:
- Smartphone und Tablet
- Automotive
- Wear OS
- TV
- Baseline Profile Generator
- Benchmark
Jedes Modul enthält wichtige Dateien und einige Code-Vorlagen, die für die entsprechende App oder den Gerätetyp geeignet.
Weitere Informationen zum Hinzufügen eines Moduls finden Sie unter Modul für neues Gerät hinzufügen.
- Funktionsmodul
-
Stellt eine modularisierte Funktion deiner App dar, die die Vorteile von Google Play nutzen kann
Feature Delivery. Mit Funktionsmodulen können Sie Ihren Nutzern beispielsweise bestimmte Funktionen Ihrer App auf Anfrage oder als Instant-Funktionen über Google Play Instant zur Verfügung stellen.
Android Studio bietet die folgenden Arten von Funktionsmodulen:
- Dynamisches Funktionsmodul
- Instant Dynamic Feature Library-Modul
Weitere Informationen finden Sie im Funktionsbereitstellung von Google Play.
- Bibliotheksmodul
- Sie stellt einen Container für Ihren wiederverwendbaren Code bereit,
kann als Abhängigkeit in anderen App-Modulen verwendet oder in andere
Projekten. Strukturell ist ein Bibliotheksmodul mit einem App-Modul identisch. Beim Erstellen wird jedoch eine Codearchivdatei anstelle eines APK erstellt, sodass es nicht auf einem Gerät installiert werden kann.
Im Fenster Create New Module (Neues Modul erstellen) bietet Android Studio die folgenden Arten von Bibliotheksmodulen an:
- Android-Bibliothek:enthält alle unterstützten Dateitypen in einem Android-Projekt, außer nativem C++-Code, einschließlich Java- und Kotlin-Quellcode, Ressourcen und Manifestdateien. Das Build-Ergebnis ist eine Android Archive-Datei (AAR), die Sie als eine Abhängigkeit für Ihre Android-App-Module.
- Android Native Library: Enthält alle Dateitypen, die in einem Android-Projekt unterstützt werden, ähnlich wie eine Android-Bibliothek. Aber auch native Android-Bibliotheken kann nativen C++-Quellcode enthalten. Das Build-Ergebnis ist eine AAR-Datei (Android Archive), die Sie als Abhängigkeit für Ihre Android-App-Module hinzufügen können.
- Java- oder Kotlin-Bibliothek: Enthält nur Kotlin- oder Java-Quelldateien. Das Build-Ergebnis ist eine Java-Archivdatei (JAR), die Sie als Eine Abhängigkeit für Ihre Android-App-Module oder andere Kotlin- oder Java-Projekte.
Module werden manchmal auch als Unterprojekte bezeichnet, da Gradle auch Module als Projekte bezeichnet.
Wenn Sie ein Bibliotheksmodul erstellen und es Ihrem Android-App-Modul als Abhängigkeit hinzufügen möchten, müssen Sie es so deklarieren:
dependencies { implementation project(':my-library-module') }
dependencies { implementation(project(":my-library-module")) }
Projektdateien

Standardmäßig werden Ihre Projektdateien in Android Studio in der Ansicht Android angezeigt. Diese Ansicht spiegelt nicht die tatsächliche Dateihierarchie auf dem Laufwerk wider. Stattdessen sind sie nach Module und Dateitypen zu verwenden, um die Navigation zwischen wichtigen Quelldateien Ihres Projekts zu vereinfachen, bestimmte Dateien oder Verzeichnisse, die nicht häufig verwendet werden.
Zu den strukturellen Unterschieden zwischen der Android-Ansicht und der Struktur auf dem Laufwerk gehören:
- Zeigt alle build-bezogenen Konfigurationsdateien des Projekts auf oberster Ebene an Gradle Script-Gruppe.
- Zeigt alle Manifestdateien für jedes Modul in einer Gruppe auf Modulebene an, wenn Sie unterschiedliche Manifestdateien für verschiedene Produktvarianten und Buildtypen haben.
- Alle alternativen Ressourcendateien werden in einer einzigen Gruppe anstelle in separaten Ordnern pro Ressourcenqualifizierer angezeigt. Zum Beispiel werden alle Dichten Versionen deines Launcher-Symbols nebeneinander angezeigt werden.
Innerhalb der einzelnen Android-App-Module werden Dateien in die folgenden Gruppen eingeteilt:
- manifests
- enthält die Datei
AndroidManifest.xml
. - Java
- Enthält die Kotlin- und Java-Quellcodedateien, getrennt nach Paketnamen einschließlich JUnit-Testcode.
- res
- Enthält alle nicht codierten Ressourcen wie UI-Strings und Bitmap-Bilder, unterteilt in entsprechende Unterverzeichnisse. Weitere Informationen zu möglichen Ressourcentypen finden Sie unter App-Ressourcen – Übersicht.
Projektansicht

Wenn Sie die tatsächliche Dateistruktur des Projekts sehen möchten, einschließlich aller Dateien, die in der Ansicht Android ausgeblendet sind, wählen Sie oben im Fenster Projekt die Option Projekt aus.
Wenn Sie die Projektansicht auswählen, sehen Sie viel mehr Dateien. und Verzeichnisse, darunter:
module-name/
-
build/
- Enthält Build-Ausgaben.
libs/
- Enthält private Bibliotheken.
src/
- Enthält alle Code- und Ressourcendateien für das Modul im folgenden
Unterverzeichnisse:
<ph type="x-smartling-placeholder">
- </ph>
androidTest/
- Enthält Code für Instrumentierungstests auf einem Android-Gerät. Weitere Informationen finden Sie unter Teste in Android Studio.
cpp/
- Enthält nativen C- oder C++-Code unter Verwendung der Java Native Interface (JNI). Weitere Informationen finden Sie in der Android NDK-Dokumentation.
main/
- Enthält die „Haupt“-Quelldateien: den Android-Code und die Ressourcen, die von allen Buildvarianten gemeinsam genutzt werden (Dateien für andere Buildvarianten befinden sich in übergeordneten Verzeichnissen, z. B.
src/debug/
für den Debug-Buildtyp):AndroidManifest.xml
- Beschreibt die Art der Anwendung und ihrer einzelnen Komponenten. Weitere Informationen finden Sie in der App-Manifest Übersicht.
java/
- Enthält Kotlin- oder Java-Codequellen oder beides, wenn Ihre App sowohl Kotlin- als auch Java-Quellcode enthält.
kotlin/
- Enthält nur Kotlin-Codequellen.
res/
- Enthält Anwendungsressourcen wie drawable-Dateien und UI-Stringdateien. Weitere Informationen finden Sie in der App-Ressourcen in der Übersicht.
assets/
- Enthält Dateien, die unverändert in eine APK-Datei kompiliert werden. Dies ist beispielsweise ein guter Speicherort für Texturen und Spieldaten. Sie können
genau wie in einem typischen Dateisystem navigieren,
URIs und lesen Dateien als Stream von Byte mithilfe der Methode
AssetManager
test/
- Enthält Code für lokale Tests, die auf Ihrer Host-JVM ausgeführt werden.
build.gradle
oderbuild.gradle.kts
(Modul)- Definiert die modulspezifischen Build-Konfigurationen.
build.gradle
ist der richtige Dateiname, wenn Sie Groovy als Build-Script-Sprache verwenden, undbuild.gradle.kts
, wenn Sie Kotlin-Script verwenden.
build.gradle
oderbuild.gradle.kts
(Projekt)- Dies definiert Ihre Build-Konfiguration, die für alle Module gilt.
build.gradle
ist wenn Sie Groovy als Build-Skriptsprache verwendenbuild.gradle.kts
, wenn Sie ein Kotlin-Script verwenden. Diese Datei ist ein integraler Bestandteil des Projekts, also pflegen Sie sie über den gesamten anderen Quellcode verfügen.Informationen zu anderen Build-Dateien finden Sie unter Build konfigurieren.
Einstellungen für die Projektstruktur
Wenn Sie verschiedene Einstellungen für Ihr Android Studio-Projekt ändern möchten, klicken Sie auf Datei > Projektstruktur, um das Dialogfeld Projektstruktur zu öffnen. Sie enthält die folgenden Abschnitte:
- Projekt: Hier legen Sie die Version für Gradle und das Android-Gradle-Plug-in und den Namen des Repository-Speicherorts fest.
- SDK Location (SDK-Speicherort): Legt den Speicherort des JDK, des Android SDK, und Android NDK, die Ihr Projekt verwendet.
- Variablen:Bearbeiten Sie Variablen, die in Ihrem Build verwendet werden. Skripts erstellt.
-
Module:Hiermit können Sie modulspezifische Builds bearbeiten.
einschließlich Ziel- und Mindest-SDK, App-Signatur,
und Bibliotheksabhängigkeiten. Die Einstellungsseite jedes Moduls ist in folgende Registerkarten unterteilt:
- Properties (Eigenschaften): Hier werden die Versionen des SDKs und die Build-Tools angegeben, die zum Kompilieren des Moduls verwendet werden sollen.
- Signing (Signieren): Gibt das Zertifikat an, das für die Verwendung mit unterschreiben Sie App.
-
Abhängigkeiten: Hier werden die Bibliotheks-, Datei- und Modulabhängigkeiten für dieses Modul aufgelistet. Sie können Abhängigkeiten hinzufügen, ändern und löschen aus diesem Bereich. Weitere Informationen zu Modulabhängigkeiten finden Sie unter Build-Varianten konfigurieren
-
Build-Varianten: Hiermit können Sie verschiedene Flavors und Build-Typen für Ihr Projekt konfigurieren.
-
Flavors:Hiermit können Sie mehrere Geschmacksrichtungen kreieren, wobei Jede Version gibt eine Reihe von Konfigurationseinstellungen an, z. B. SDK-Mindestversion und Zielversion des Moduls Versionscode und Versionsname.
Sie könnten zum Beispiel eine Geschmacksrichtung definieren, die einen SDK mindestens 21 und Ziel-SDK 29 und eine andere Variante mit SDK mindestens 24 und Ziel-SDK 33 ist.
- Build-Typen: Hier können Sie Build-Konfigurationen erstellen und ändern, wie unter Build-Varianten konfigurieren beschrieben. Standardmäßig In jedem Modul sind Debugging- und release-Build-Typen und Sie können bei Bedarf weitere definieren.
-