I progetti Android contengono molti file e strutture di directory relativi alla build per organizzare l'origine e le risorse dell'applicazione. Prima di iniziare nei dettagli della configurazione, esamineremo la struttura generale e le nozioni di base di ciò che appartiene a ogni parte.
In questa tabella sono elencati i file tipici di un progetto Android. Le descrizioni di ogni il file o la directory includono note sul tipo di contenuto che contiene. Migliore evolvono nel tempo e queste descrizioni potrebbero non corrispondere a un progetto ereditato o scaricato da internet.
Quando scrivi i file di build, usa un approccio dichiarativo. crea logica e attività le definizioni devono essere visualizzate solo nei plug-in. Limitando la logica di build ai plug-in, i file di build diventano dichiarazioni dei dati, più dirette e l'editing. Le versioni future potrebbero includere una specifica alternativa come Gradle dichiarativo, che impedirà la logica di build nel .
Cartella/file  | 
    Usa  | 
  
|---|---|
.gradle  | 
    Directory della cache del progetto Gradle Gestito da Gradle e contiene la distribuzione Gradle scaricata, la cache del progetto e i file di configurazione. Non cambiare i file in questa directory.  | 
  
.idea/  | 
    Metadati di progetto Android Studio Non cambiare i file in questa directory.  | 
  
build.gradle(.kts)  | 
    Deve contenere solo dichiarazioni dei plug-in per configurare un classpath del plug-in comune nei sottoprogetti. L'altro codice deve trovarsi nelle impostazioni o nei file di build nidificati a livello di progetto.  | 
  
gradle.properties  | 
    Configurazione di esecuzione a Gradle Contiene le proprietà Gradle, che controlla gli aspetti dell'ambiente di build Gradle, come le dimensioni dell'heap, la memorizzazione nella cache e l'esecuzione parallela. Qui vengono definite alcune proprietà Android temporanee al fine di ridurre le modifiche apportate a AGP DSL man mano che vengono aggiunte e rimosse in un secondo momento.  | 
  
Gradlew (linux, Mac) gradlew.bat (Windows)  | 
    File Gradle wrapper Esegui il bootstrap della tua build scaricando una distribuzione Gradle e inoltrandola ai comandi. In questo modo puoi eseguire build senza dover preinstallare Gradle.  | 
  
proprietà.locali  | 
    Configurazione della macchina locale Contiene proprietà relative alla macchina locale, come la posizione dell'SDK Android. Escludi questo file dal controllo del codice sorgente.  | 
  
impostazioni.gradle(.kts)  | 
    Contiene informazioni globali sulla build per l'inizializzazione e la configurazione del progetto Gradle, ad esempio 
  | 
  
Gradle/  | 
    |
🎞 libs.versions.toml  | 
    Definisce le variabili per le dipendenze e i plug-in utilizzati all'interno della build. Specifica quali versioni vuoi utilizzare qui, garantendo la coerenza tra tutti i progetti secondari del progetto.  | 
  
🎞 wrapper/  | 
    |
ꛭ gradle‐wrapper.jar  | 
    Bootstrapping a Gradle eseguibile Scarica la distribuzione Gradle specificata (se non esiste) e la esegue, trasmettendo eventuali argomenti  | 
  
🎞 gradle‐wrapper.properties  | 
    Configurazione per il wrapper Gradle Specifica dove scaricare la distribuzione Gradle (inclusa la versione da utilizzare).  | 
  
app/  | 
    I sottoprogetti (noti come "moduli" in Android Studio) possono creare applicazioni o librerie e potrebbero dipendere da altri sottoprogetti o dipendenze esterne. 
  | 
  
ꛭ build.gradle(.kts)  | 
    File di build a livello di sottoprogetto Dichiara come creare questo sottoprogetto. Ogni sottoprogetto richiede un file di build separato e deve contenere 
 Non devi includere nei file di build logica di build (ad esempio definizioni o condizioni delle funzioni Kotlin) o dichiarazioni delle attività. La logica e le attività della build devono essere contenute solo all'interno dei plug-in.  | 
  
🎞 src/  | 
    File di origine del sottoprogetto Raggruppa i file di origine (codice dell'applicazione e risorse) in set di origine. Il set di origini   | 
  
ꛭ principale/  | 
    Set di origine principale Codice sorgente e risorse comuni a tutte le varianti della build. Questa sorgente funge da base per tutte le build e altri set di origini più specifici vengono aggiunti o sostituiti.  | 
  
ꛭ java/ 🎞 kotlin/  | 
    Codice sorgente di Kotlin e Java La directory   | 
  
ꛭ res/  | 
    Contiene le risorse dell'applicazione, come le immagini e i file XML. Tutte le applicazioni utilizzano alcune risorse di base, ad esempio le icone di avvio, ma molte di queste risorse, come layout e menu, vengono utilizzate solo nelle applicazioni basate sulla visualizzazione. La scrittura delle applicazioni utilizza le risorse String definite in questa directory.  | 
  
ꛭ AndroidManifest.xml  | 
    Metadati delle app per Android Letto dal gestore di pacchetti Android per indicare al sistema 
  | 
  
🎞 androidTest/  | 
    Set di origini di test dispositivo Contiene un'origine per i test che verranno eseguiti su un emulatore o un dispositivo Android. Questi test hanno accesso a un ambiente Android reale, ma vengono eseguiti più lentamente dei test dell'host.  | 
  
ꛭ test/  | 
    Test host set di origine Contiene il codice sorgente per i test eseguiti localmente in una JVM, a differenza dei test eseguiti su un dispositivo. Questi test sono molto più veloci da eseguire rispetto a quelli del dispositivo. Tuttavia, qualsiasi chiamata di sistema (inclusi i cicli di vita che eseguono l'applicazione) deve essere simulata, simulata, simulata in altro modo o in altro modo. Tutti i file di origine nel set di origini   | 
  
🎞 proguard-rules.pro  | 
    Definisce le regole per controllare la riduzione, l'ottimizzazione e l'offuscamento delle applicazioni. R8 rimuove codice e risorse non necessari, ottimizza le prestazioni di runtime e riduce ulteriormente al minimo il codice rinominando gli identificatori.  |