Panoramica dei progetti

Un progetto in Android Studio contiene tutto ciò che definisce il tuo area di lavoro per un'app, dal codice sorgente e dagli asset per testare il codice e la build configurazioni.

Quando inizi un nuovo progetto, Android Studio crea i necessari struttura di tutti i tuoi file e li rende visibili Finestra Progetto in Android Studio. Per aprire la finestra, seleziona Visualizza > Finestre degli strumenti > Progetto.

Questa pagina fornisce una panoramica dei componenti chiave del progetto.

Moduli

Un modulo è una raccolta di file di origine e impostazioni di build che consentono di dividere il progetto in unità discrete di funzionalità. Il progetto può avere uno o più moduli e un modulo può utilizzare un altro modulo come dipendenza. Puoi creare, testare ed eseguire il debug di ogni modulo in modo indipendente.

I moduli aggiuntivi sono utili quando si creano librerie di codice all'interno di o quando si desidera creare set di codice e risorse diversi diversi tipi di dispositivi, come smartphone e indossabili, ma conserva tutti i file con ambito all'interno dello stesso progetto e condividere codice.

Per aggiungere un nuovo modulo al progetto, fai clic su File > Nuovo > Nuovo modulo.

Android Studio offre alcuni tipi distinti di moduli:

Modulo app per Android
Fornisce un contenitore per il codice sorgente, i file di risorse e le impostazioni a livello di app della tua app, come il file di build a livello di modulo e il file Android Manifest. Quando crei un nuovo progetto, il modulo dell'app predefinito è denominato "app".

Offerte di Android Studio i seguenti tipi di moduli dell'app:

  • Telefono e Pastiglia
  • Automotive
  • Wear OS
  • Televisione
  • Generatore profili di riferimento
  • Benchmark

Ogni modulo fornisce file essenziali e alcuni modelli di codice appropriati per il tipo di app o dispositivo corrispondente.

Per ulteriori informazioni sull'aggiunta di un modulo, leggi Aggiungi un modulo per un nuovo dispositivo.

Modulo delle funzionalità
Rappresenta una funzionalità modularizzata della tua app che consente di sfruttare Play Feature Delivery. Ad esempio, con i moduli delle funzionalità, puoi fornire agli utenti con determinate funzionalità della tua app on demand o come esperienze istantanee tramite Google Play Instant.

Android Studio offre i seguenti tipi di moduli di funzionalità:

  • Modulo di funzionalità dinamiche
  • Modulo della libreria di funzionalità dinamiche istantanee

Per saperne di più, consulta Play Feature Delivery.

Modulo Raccolta
Fornisce un contenitore per il codice riutilizzabile, che può essere usata come dipendenza in altri moduli dell'app o importarla in altri in modo programmatico a gestire i progetti. Strutturalmente, un modulo della libreria è uguale a un modulo dell'app, ma quando viene creato, crea un file di archivio del codice invece di un APK, quindi non può essere installato un dispositivo.

Nella finestra Crea nuovo modulo, Android Studio offre i seguenti tipi di moduli della libreria:

  • Android Library: contiene tutti i tipi di file supportati in un progetto Android, ad eccezione del codice C++ nativo, tra cui il codice sorgente Java e Kotlin, risorse e file manifest. Il risultato della build è un file AAR (Android Archive) che puoi aggiungere come una dipendenza per i moduli dell'app Android.
  • Libreria nativa Android: contiene tutti i tipi di file supportati in un progetto Android, in modo simile a una libreria Android. Tuttavia, anche le librerie native di Android possono contenere codice sorgente C++ nativo. Il risultato della build è un file AAR (Android Archive) che puoi aggiungere come dipendenza per i moduli dell'app Android.
  • Java o Kotlin Library: contiene solo file sorgente Kotlin o Java. Il risultato della build è un file JAR (Java Archive) che puoi aggiungere come una dipendenza per i tuoi moduli di app Android o altri progetti Kotlin o Java.

I moduli sono a volte chiamati progetti secondari perché Gradle fa riferimento anche ai moduli con il termine progetti.

Quando crei un modulo della libreria e vuoi aggiungerlo come dipendenza al modulo dell'app per Android, devi dichiararlo come segue:

Alla moda

dependencies {
    implementation project(':my-library-module')
}

Kotlin

dependencies {
    implementation(project(":my-library-module"))
}

File di progetto

Per impostazione predefinita, Android Studio mostra i file di progetto nel Android. Questa visualizzazione non riflette l'effettiva gerarchia dei file su disco. È invece organizzato per moduli e tipi di file per semplificare la navigazione tra i file di origine chiave del progetto, nascondendo alcuni file o directory che non sono comunemente usati.

Alcune differenze strutturali tra la vista Android e struttura sul disco è che la vista Android:

  • Mostra tutti i file di configurazione relativi alla compilazione del progetto in un gruppo Script Gradle di primo livello.
  • Mostra tutti i file manifest per ciascun modulo in un gruppo a livello di modulo quando avere file manifest diversi per versioni e tipi di build del prodotto diversi.
  • Mostra tutti i file di risorse alternative in un unico gruppo invece che in cartelle separate per qualificatore della risorsa. Ad esempio, tutte le densità dell'icona in Avvio applicazioni sono visibili affiancate.

All'interno di ogni modulo dell'app per Android, i file vengono visualizzati nei seguenti gruppi:

manifest
Contiene il file AndroidManifest.xml.
java
Contiene i file di codice sorgente Kotlin e Java, separati da nomi di pacchetto, incluso il codice di test JUnit.
res
Contiene tutte le risorse non di codice, come stringhe UI e immagini bitmap suddivise nelle sottodirectory corrispondenti. Per ulteriori informazioni sui possibili tipi di risorse, vedi Panoramica delle risorse per app.
di Gemini Advanced.
.

La vista Progetto

Per visualizzare la struttura effettiva dei file del progetto, inclusi tutti i file nascosti nella visualizzazione Android, seleziona Progetto dal menu in alto nella finestra Progetto.

Quando selezioni la vista Progetto, puoi vedere molti più file e directory, tra cui:

module-name/
build/
Contiene output di build.
libs/
Contiene librerie private.
src/
Contiene tutti i file di codice e risorse per il modulo seguente sottodirectory:
androidTest/
Contiene il codice per i test di strumentazione eseguiti su un dispositivo Android. Per ulteriori informazioni, vedi Esegui un test in Android Studio.
cpp/
Contiene codice C o C++ nativo utilizzando la Java Native Interface (JNI). Per ulteriori informazioni, vedi la documentazione di Android NDK.
main/
Contiene il valore "principale" Set di sorgenti: il codice e le risorse Android condivisi da tutte le varianti di build (file per altre varianti di build risiedono in directory di pari livello, ad esempio src/debug/ per tipo di build di debug):
AndroidManifest.xml
Descrivi la natura dell'applicazione e di ciascuno dei suoi componenti. Per ulteriori informazioni, consulta file manifest dell'app panoramica.
java/
Contiene sorgenti di codice Kotlin o Java oppure entrambi, se la tua app ha sia Kotlin sia Java codice sorgente.
kotlin/
Contiene solo sorgenti di codice Kotlin.
res/
Contiene risorse dell'applicazione, ad esempio file disegnabili e file di stringhe dell'interfaccia utente. Per maggiori informazioni informazioni, consulta Panoramica delle risorse per l'app.
assets/
Contiene file da compilare in un file APK così come sono. Ad esempio: questa è una buona posizione per texture e dati di gioco. Puoi navigare in questa directory come in un normale file system, utilizzando gli URI e leggere i file come stream di byte utilizzando AssetManager.
test/
Contiene il codice per i test locali eseguiti sulla JVM host.
build.gradle o build.gradle.kts (modulo)
Questo campo definisce le configurazioni di build specifiche del modulo. build.gradle è il il nome file corretto se utilizzi Groovy come linguaggio di script di compilazione build.gradle.kts se utilizzi lo script Kotlin.
build.gradle o build.gradle.kts (progetto)
Questo campo definisce la configurazione della build che si applica a tutti i moduli. build.gradle è il nome file corretto se utilizzi Groovy come linguaggio di script di compilazione build.gradle.kts se utilizzi lo script Kotlin. Questo file è parte integrante del progetto, quindi gestiscilo nel controllo delle revisioni con tutto l'altro codice sorgente.

Per informazioni su altri file di build, consulta Configura la tua build.

di Gemini Advanced.
.

Impostazioni della struttura del progetto

Per modificare le varie impostazioni del tuo progetto Android Studio, apri l'app Nella finestra di dialogo Struttura del progetto, fai clic su File > Struttura del progetto. Contiene i parametri sezioni seguenti:

  • Project: imposta la versione per Gradle e il plug-in Android per Gradle e il nome della posizione del repository.
  • SDK Location (Posizione SDK): imposta la posizione del JDK, dell'SDK Android e Android NDK utilizzati dal tuo progetto.
  • Variabili:consente di modificare le variabili utilizzate all'interno della build. script.
  • Moduli: consente di modificare build specifiche del modulo configurazioni, inclusi SDK target e minimo, firma dell'app, e le dipendenze della libreria. La pagina delle impostazioni di ogni modulo è suddivisa nelle seguenti schede:
    • Proprietà:specifica le versioni dell'SDK e della build gli strumenti necessari per compilare il modulo.
    • Firma:specifica il certificato da utilizzare per firma il tuo .
  • Dipendenze: elenca la libreria, il file e il modulo per questo modulo. Puoi aggiungere, modificare ed eliminare le dipendenze da questo riquadro. Per ulteriori informazioni sulle dipendenze dei moduli, consulta Configura le varianti di build.

  • Varianti di build: consente di configurare versioni e tipi di build diversi. per il tuo progetto.

    • Flavor: ti consente di creare più versioni di build, in cui ciascuna versione specifica un insieme di impostazioni di configurazione, come la versione minima e di destinazione dell'SDK del modulo, il codice di versione e il nome della versione più recente.

      Ad esempio, puoi definire un flavor con un SDK minimo pari a 21 e un SDK target pari a 29 e un altro con un SDK minimo pari a 24 e un SDK target pari a 33.

    • Tipi di build: consente di creare e modificare la build. come descritto in Configurare le varianti di build. Per impostazione predefinita, ogni modulo include debug tipi di build release e puoi definirne altri in base alle esigenze.