Nuove funzionalità nell'anteprima di Android Studio

Questa pagina elenca le nuove funzionalità introdotte nelle versioni di anteprima di Android Studio. Le build di anteprima forniscono l'accesso in anteprima alle funzionalità e ai miglioramenti più recenti in Android Studio. Puoi scaricare queste versioni di anteprima. Se riscontri problemi durante l'utilizzo di una versione di anteprima di Android Studio, comunicacelo. Le tue segnalazioni di bug ci aiutano a migliorare Android Studio.

Le release canary contengono funzionalità all'avanguardia in fase di sviluppo attivo e sono testate leggermente. Anche se puoi utilizzare le build Canary per lo sviluppo, tieni presente che le funzionalità potrebbero essere aggiunte o modificate. I candidati per le release (RC) sono la prossima versione di Android Studio e sono quasi pronti per la release stabile. Il set di funzionalità per la prossima versione è stato stabilizzato. Consulta Nomi delle release di Android Studio per comprendere la denominazione delle versioni di Android Studio.

Per le ultime novità sulle versioni di anteprima di Android Studio, inclusa una lista delle correzioni più importanti in ogni versione di anteprima, consulta gli aggiornamenti delle versioni nel blog di Android Studio.

Versioni attuali di Android Studio

La tabella seguente elenca le versioni attuali di Android Studio e i rispettivi canali.

Versione Canale
Rilascio di funzionalità Android Studio Narwhal | 2025.1.2 Stabile
Plug-in Android per Gradle 8.12.0 Stabile
Rilascio di funzionalità Android Studio Narwhal 3 | 2025.1.3 RC
Rilascio di funzionalità Android Studio Narwhal 4 | 2025.1.4 Canary

Compatibilità con le anteprime del plug-in Android per Gradle

Ogni versione di anteprima di Android Studio viene pubblicata insieme a una versione corrispondente del plug-in Android per Gradle (AGP). Le versioni di anteprima di Studio devono funzionare con qualsiasi versione stabile compatibile di AGP. Tuttavia, se utilizzi una versione di anteprima di AGP, devi utilizzare la versione di anteprima corrispondente di Studio (ad esempio Android Studio Chipmunk Canary 7 con AGP 7.2.0-alpha07). I tentativi di utilizzo di versioni divergenti (ad esempio Android Studio Chipmunk Beta 1 con AGP 7.2.0-alpha07) causeranno un errore di sincronizzazione, che comporterà la richiesta di aggiornamento alla versione corrispondente di AGP.

Per un log dettagliato delle deprecazioni e delle rimozioni dell'API del plug-in Android per Gradle, consulta gli aggiornamenti dell'API del plug-in Android per Gradle.

Studio Labs

Studio Labs ti consente di provare le ultime funzionalità sperimentali di AI in una versione stabile di Android Studio, in modo da poter integrare più rapidamente le nostre offerte di assistenza AI nel tuo flusso di lavoro di sviluppo. Per ulteriori informazioni, vedi Studio Labs.

Di seguito sono riportate le funzionalità attualmente disponibili in Studio Labs.

Funzionalità Descrizione Documenti
Crea generazione di anteprima Gemini può generare automaticamente anteprime di Compose, inclusi dati simulati per i parametri di anteprima, per un composable specifico o per tutti i composable in un file. Generare anteprime di Composizione
Allegare immagini Allega un'immagine alla tua query per generare UI, eseguire il debug dei bug della UI, documentare l'architettura di un'app e altro ancora. Allegare immagini
Allega file Allega file alla tua query per aiutare Gemini a comprendere meglio il contesto della tua domanda e identificare il codice da aggiornare. Allegare file
UI di trasformazione Utilizza il linguaggio naturale per aggiornare l'interfaccia utente dell'app direttamente dal riquadro di anteprima di Compose. UI di trasformazione

Rilascio di funzionalità Android Studio Narwhal 3 | 2025.1.3

Di seguito sono riportate le nuove funzionalità del rilascio di funzionalità Android Studio Narwhal 3 | 2025.1.3.

Per vedere quali problemi sono stati risolti in questa versione di Android Studio, consulta i problemi risolti.

Anteprime di Compose ridimensionabili

L'anteprima di Compose ora supporta il ridimensionamento dinamico per fornirti un feedback visivo immediato su come la tua UI si adatta a schermi di dimensioni diverse.

Per utilizzare la funzionalità, attiva la modalità Focus nell'anteprima di composizione modificando l'opzione di visualizzazione sulla barra degli strumenti:

Modalità Niente distrazioni per l'anteprima di bozza
Modalità Niente distrazioni per l'anteprima della composizione

Ora puoi ridimensionare la finestra di anteprima trascinandone i bordi:

Ridimensionamento della finestra di anteprima trascinando i bordi.

In alternativa, puoi utilizzare la barra degli strumenti di ridimensionamento, che viene visualizzata dopo il ridimensionamento dell'anteprima:

Ridimensionamento della finestra di anteprima utilizzando la barra degli strumenti di ridimensionamento.

Se vuoi salvare la nuova dimensione come nuova annotazione Preview, utilizza il menu di scelta rapida:

Crea anteprima ridimensionabile salva nuova dimensione
Compose Resizeable Preview save new size

La funzionalità di ridimensionamento dinamico ti aiuta a creare UI che hanno un aspetto ottimale su schermi di qualsiasi dimensione.

Impostazione della visualizzazione Android per mostrare i file di build nei moduli corrispondenti

È presente una nuova impostazione per visualizzare i file di build nel modulo corrispondente nella visualizzazione Android. Questa visualizzazione può essere utile quando lavori a progetti con molti moduli. Per attivare la visualizzazione, apri il menu Opzioni disponibile accanto alla visualizzazione Android. Poi seleziona Aspetto > Visualizza file di build nel modulo.

Visualizzazione Android: crea file nel modulo
Opzione per visualizzare i file di build nei moduli corrispondenti in Android View.

Approfondimenti sulle norme di Google Play in Android Studio

Android Studio ora include approfondimenti e indicazioni più dettagliati sulle norme di Google Play che potrebbero influire sulla tua app. Queste informazioni ti aiutano a creare app più sicure fin dall'inizio, evitando problemi che potrebbero interrompere la procedura di lancio e richiedere più tempo e risorse per la risoluzione in un secondo momento.

A partire da Android Studio Narwhal 3 Feature Drop, puoi visualizzare gli approfondimenti sulle norme di Play come controlli lint. Questi controlli lint presentano le seguenti informazioni:

  • Una panoramica delle norme.
  • Cose da fare e da non fare per evitare gli errori più comuni.
  • Link alle pagine delle norme di Google Play, dove puoi trovare le norme formali complete e ulteriori informazioni e risorse utili.

Questa funzionalità ha lo scopo di fornire indicazioni utili prima della revisione, in modo da semplificare l'invio delle app. Non copre tutte le norme e non fornisce decisioni definitive relative alle revisioni delle app. Consulta sempre la versione integrale delle norme nel Centro norme per ricevere indicazioni. Stiamo inoltre sviluppando e migliorando attivamente questa integrazione. Se hai feedback, segnalalo.

Per verificare se sono presenti approfondimenti sulle norme di Play per il tuo progetto, vai a Codice > Ispeziona per approfondimenti sulle norme di Play… Gli approfondimenti verranno elencati nella finestra degli strumenti "Problemi" e verranno visualizzati anche come avvisi Lint nei file corrispondenti.

Approfondimenti sulle norme di Google Play in Android Studio
Approfondimenti sulle norme di Google Play nel rilascio di funzionalità Android Studio Narwhal 3.

Testare e sviluppare con il backup e il ripristino delle app

Assicurarsi che il backup e il ripristino di Android funzioni correttamente per la tua app è un aspetto fondamentale per garantire che gli utenti continuino a interagire con la tua app dopo il passaggio a un nuovo dispositivo o il ripristino dal cloud. Tuttavia, testare se il backup e il ripristino dei dati funzionano per la tua app può essere difficile.

Android Studio Narwhal offre modi per generare un backup per la tua app e ripristinarlo su un altro dispositivo. Può essere utile per verificare se la tua app si comporta come previsto durante il ripristino dei dati dell'app da dispositivo a dispositivo o da un backup sul cloud oppure se vuoi un modo più rapido per configurare un dispositivo di test con i dati necessari per sviluppare ed eseguire il debug dell'app.

Genera un backup

Per generare un file di backup:

  1. Eseguire il deployment di una versione di debug dell'app su un dispositivo connesso
  2. Utilizza una delle seguenti azioni per generare un backup:
    • Nella finestra Running Device, fai clic sull'azione Backup App Data dalla barra degli strumenti.
    • Seleziona Esegui > Backup dati app dalla barra dei menu principale.
    • Nella scheda Esplora dispositivi > Processi, fai clic con il tasto destro del mouse sul processo dell'app e seleziona Backup dati app.
  3. Nella finestra di dialogo visualizzata, procedi nel seguente modo:
    • Conferma l'ID applicazione dell'app per cui vuoi generare un backup
      • Seleziona se vuoi generare un backup Da dispositivo a dispositivo, Cloud o Cloud (non criptato).
    • Conferma il nome e la posizione del backup che vuoi salvare. Per impostazione predefinita, il backup viene salvato nella directory principale del progetto Android Studio corrente.
      Genera un backup per la tua app.
  4. Fai clic su Ok quando Android Studio ti chiede se può arrestare l'app. Per generare il backup, Android Studio deve arrestare il processo dell'app.

Puoi visualizzare i backup che generi nella finestra dello strumento Project > Android sotto il nodo Backup Files.

Tipi di backup

Puoi generare diversi tipi di backup per la tua app. Quando generi un backup, seleziona il tipo di backup relativo allo scenario che vuoi testare:

  • Da dispositivo a dispositivo:genera un backup dell'app, simile a quello creato durante il trasferimento da dispositivo a dispositivo. Nei trasferimenti da dispositivo a dispositivo, i dati di backup dell'app vengono inviati direttamente a un altro dispositivo, ad esempio tramite USB o Wi-Fi.
  • Cloud:genera un backup dell'app, simile a quello salvato nello spazio di archiviazione dell'Account Google dell'utente. Quando un utente configura un nuovo dispositivo, può scegliere di eseguire il ripristino da un backup sul cloud.
  • Cloud (non criptato): genera un backup dell'app, simile a quello salvato nello spazio di archiviazione dell'Account Google dell'utente su un dispositivo su cui non è attivata la crittografia lato client.

Nota: quando utilizzi la funzionalità per testare Cloud, Cloud (non criptato) o Backup da dispositivo a dispositivo, il backup generato non viene inviato a Cloud o a un altro dispositivo, a differenza del flusso di backup effettivo. Genera il backup dell'app come se dovesse essere salvato sul cloud o inviato a un altro dispositivo. I backup generati per qualsiasi tipo di backup possono essere visualizzati in File di backup nella finestra degli strumenti Progetto > Android.

Ripristinare i dati delle app

Per ripristinare i dati delle app:

  1. Esegui il deployment dell'app sul dispositivo connesso. L'app deve avere lo stesso ID applicazione del file di backup che vuoi ripristinare sul dispositivo.
  2. Vai a una delle seguenti azioni e fai clic:
    • Nella finestra Dispositivo in esecuzione, fai clic sull'azione Ripristina dati app dalla barra degli strumenti e seleziona un file di backup dalla cronologia recente o fai clic su Sfoglia.
    • Vai a Esegui > Ripristina dati app dalla barra dei menu principale.
    • Nella scheda Esplora dispositivi > Processi, fai clic con il tasto destro del mouse sul processo dell'app e seleziona Ripristina dati app.
    • Nella finestra degli strumenti Progetto > Android, fai clic con il tasto destro del mouse su un backup nel nodo File di backup e seleziona Ripristina dati app.
  3. Se applicabile, seleziona un backup dalla cronologia recente o fai clic su Sfoglia per selezionare un file di backup da ripristinare dallo spazio di archiviazione locale.

In alternativa, puoi includere un file di backup come parte di una configurazione di esecuzione, in modo che il deployment dell'app ripristini anche i dati dell'app da un file di backup. Per farlo, segui questi passaggi:

  1. Vai a Esegui > Modifica configurazioni dalla barra dei menu principale.
  2. Seleziona una configurazione di esecuzione dell'app e vai a Opzioni di ripristino.
    Opzioni di ripristino in una configurazione di esecuzione.
  3. Per ripristinare un'app da un backup, seleziona la casella accanto a Ripristina stato app.
  4. Seleziona un file di backup dalla cronologia recente oppure sfoglia e seleziona il file di backup dallo spazio di archiviazione locale.
  5. Se vuoi ripristinare i dati dell'app solo su una nuova installazione dell'app, seleziona la casella accanto a Ripristina solo su nuova installazione apk. Questa opzione può essere utile se esegui il deployment su un nuovo dispositivo di test e vuoi ripristinare i dati per facilitare il debug e lo sviluppo di app.
  6. Fai clic su Ok per salvare la configurazione di esecuzione.
  7. Esegui il deployment dell'app utilizzando la configurazione di esecuzione per testare il ripristino dei dati dell'app su un dispositivo connesso.

Ispezioni Proguard

Android Studio ora include ispezioni per evitare regole Proguard realizzate in modo errato o regole che impediscono le ottimizzazioni R8. Regole di conservazione eccessivamente ampie, ad esempio -keep class **.* e configurazioni delle regole Proguard per i consumatori, ad esempio dontshrink e -dontoptimize, ora attivano un avviso nell'IDE Studio. Per creare una buona regola di conservazione che consenta la riduzione del codice, limita l'ambito della regola a un pacchetto specifico e specifica in modo esplicito cosa vuoi conservare.

File AGENT.md per il contesto a livello di progetto

Ora puoi includere file AGENT.md nel tuo progetto. Si tratta di file Markdown che forniscono istruzioni specifiche per il progetto, regole di stile di codifica e altre indicazioni a Gemini come contesto.

Gemini rileva e applica automaticamente le istruzioni di qualsiasi file denominato AGENT.md nel tuo progetto. Se non è presente un file AGENT.md, Gemini cerca invece un file GEMINI.md come fallback.

Nuova impostazione per disattivare la sincronizzazione automatica

Android Studio ora offre un'impostazione per passare dalla modalità di sincronizzazione automatica predefinita (ad es. la sincronizzazione viene eseguita automaticamente quando viene aperto un progetto) a una nuova modalità di sincronizzazione manuale con promemoria. Il comportamento predefinito è ancora la sincronizzazione automatica. Per passare alla sincronizzazione manuale, vai a File (Android Studio su macOS) > Impostazioni > Build, esecuzione, deployment > Strumenti di build e imposta Modalità di sincronizzazione del progetto su Sincronizzazione manuale con promemoria.

Funzionalità che non fanno più parte di Studio Labs

Le seguenti funzionalità sperimentali di Studio Labs sono stabili a partire da Narwhal 3 Feature Drop:

Rilascio di funzionalità Android Studio Narwhal 4 | 2025.1.4

Di seguito sono riportate le nuove funzionalità di Android Studio Narwhal 4 Feature Drop | 2025.1.4.

Per vedere quali problemi sono stati risolti in questa versione di Android Studio, consulta i problemi risolti.

Journeys per Android Studio

Journeys per Android Studio semplifica la scrittura e la manutenzione dei test end-to-end consentendoti di utilizzare il linguaggio naturale per descrivere i passaggi e le asserzioni per ogni test, chiamato percorso. Sfruttando le funzionalità di visione e ragionamento di Gemini, i passaggi scritti in linguaggio naturale vengono convertiti in azioni che Gemini esegue sulla tua app, rendendo i viaggi facili da scrivere e comprendere. Inoltre, puoi scrivere e descrivere asserzioni più complesse, che Gemini valuta in base a ciò che vede sul dispositivo per determinare se i tuoi percorsi vengono superati o meno.

Poiché Gemini ragiona su quali azioni eseguire per soddisfare gli obiettivi, i percorsi sono più resilienti ai cambiamenti sottili nel layout o nel comportamento dell'app, il che si traduce in un minor numero di test instabili quando vengono eseguiti su versioni diverse dell'app e su configurazioni diverse dei dispositivi.

Scrivi ed esegui i percorsi direttamente da Android Studio su qualsiasi dispositivo Android locale o remoto. L'IDE offre una nuova esperienza di editor per la creazione di percorsi, nonché risultati avanzati che ti aiutano a seguire meglio il ragionamento e l'esecuzione del percorso da parte di Gemini.

Backup and Sync

Ora puoi eseguire il backup delle impostazioni di Android Studio nello spazio di archiviazione cloud utilizzando il tuo account Google o JetBrains. In questo modo, le impostazioni, come le mappature dei tasti, le impostazioni dell'editor di codice, le impostazioni di sistema e altro ancora, vengono sincronizzate. Per iniziare, procedi in uno dei seguenti modi:

  • Dopo aver aperto un progetto in Android Studio, accedi al tuo Account Google facendo clic sull'avatar nell'angolo in alto a destra dell'IDE e poi su Accedi.

    1. Segui le istruzioni nella finestra di dialogo visualizzata e assicurati di selezionare la casella per autorizzare Android Studio ad accedere al tuo spazio di archiviazione dell'Account Google.
    2. Segui le istruzioni per autorizzare Android Studio.
  • Vai a Impostazioni > Backup e sincronizzazione.

    1. Seleziona Google per utilizzare lo spazio di archiviazione del tuo Account Google per sincronizzare i dati delle app tra le installazioni di Android Studio. In alternativa, puoi utilizzare un account JetBrains per sincronizzare i dati dell'app tra le installazioni di IntelliJ e Android Studio.
    2. Dopo aver seguito le istruzioni per autorizzare Android Studio ad accedere allo spazio di archiviazione del tuo account preferito, torna ad Android Studio.
    3. Nella pagina Impostazioni > Backup e sincronizzazione, puoi rivedere le categorie di dati delle app che vuoi sincronizzare con il tuo account.
    4. Per disattivare Backup e sincronizzazione, deseleziona la casella che attiva la funzionalità.

Se hai già sincronizzato i dati con il dispositivo selezionato, Android Studio ti offre la possibilità di scaricare le impostazioni dallo spazio di archiviazione remoto (questa è l'opzione predefinita) o caricare le impostazioni locali e sovrascrivere le impostazioni sincronizzate con lo spazio di archiviazione remoto.

Correzioni suggerite per i crash

Nel rilascio di funzionalità Android Studio Meerkat, abbiamo lanciato gli approfondimenti di Gemini per gli arresti anomali segnalati nella finestra dello strumento Approfondimenti sulla qualità delle app. Ora Android Studio può utilizzare Gemini per analizzare i dati sugli arresti anomali insieme al codice sorgente per suggerire potenziali correzioni. Dopo aver selezionato un arresto anomalo nella finestra dello strumento Approfondimenti sulla qualità dell'app, vai alla scheda Approfondimenti e fai clic su Suggerisci una correzione dopo che Gemini genera un approfondimento sull'arresto anomalo. Gemini genera quindi modifiche al codice suggerite che puoi esaminare e accettare in una scheda di differenze dell'editor.

Nuova impostazione per aprire i nuovi progetti con la visualizzazione Progetto

È disponibile una nuova impostazione per aprire per impostazione predefinita i nuovi progetti nella visualizzazione Progetto. Per attivare l'impostazione, vai a File (Android Studio su macOS) > Impostazioni > Impostazioni avanzate > Visualizzazione progetto e seleziona Imposta la visualizzazione progetto come predefinita.

Crea strumento di test degli screenshot di anteprima

Utilizza lo strumento di test degli screenshot di anteprima di Compose per testare le tue UI Compose e prevenire le regressioni. Il nuovo strumento ti aiuta a generare report HTML che ti consentono di rilevare visivamente eventuali modifiche all'interfaccia utente della tua app. Scopri di più su Anteprima composizione Test degli screenshot.

Miglioramento della struttura ad albero dei componenti di Layout Inspector incorporato

L'interazione con l'albero dei componenti in Embedded Layout Inspector è ora più intuitiva ed efficiente grazie a diversi miglioramenti chiave. Questi aggiornamenti sono progettati per semplificare il workflow e fornire informazioni più chiare sulle strutture dell'interfaccia utente di Compose.

  1. Scorrimento orizzontale: ora puoi scorrere orizzontalmente all'interno dell'albero dei componenti, semplificando la navigazione e l'ispezione di layout ampi o con molti livelli di nidificazione senza perdere il contesto.
  2. Scorrimento automatico alla selezione: la selezione di un elemento nell'albero dei componenti ora scorre automaticamente la visualizzazione, sia orizzontalmente che verticalmente, per portare l'elemento selezionato a fuoco. In questo modo, l'elemento che ti interessa è sempre in primo piano.
  3. Visualizzazione delle relazioni migliorata: abbiamo perfezionato le linee di supporto all'interno della struttura ad albero dei componenti per offrire indicazioni visive più esplicite per comprendere le relazioni tra i nodi. Le linee tratteggiate ora indicano chiaramente una relazione di call stack tra un nodo principale e il relativo nodo secondario, aiutandoti a tracciare le connessioni programmatiche in modo più efficace. Le linee continue continuano a rappresentare tutte le altre relazioni standard padre-figlio all'interno dell'albero.

Questi miglioramenti mirano a fornire un'esperienza di debug più fluida ed efficiente, consentendoti di comprendere e perfezionare rapidamente la tua UI.

L'albero dei componenti in Embedded Layout Inspector ora supporta lo scorrimento orizzontale e lo scorrimento automatico durante la selezione.
Miglioramento della struttura dei componenti dell'ispettore del layout incorporato

Utilizzare un LLM locale

Android Studio Narwhal 4 Feature Drop ti consente di scegliere l'LLM che alimenta le funzionalità di AI dell'IDE.

Finestra di chat di Android Studio Gemini che mostra il selettore di modelli con le opzioni per Gemini e un LLM locale.
Selettore di modelli in Android Studio.

Il modello LLM deve trovarsi sul tuo computer locale, il che è vantaggioso se hai una connettività a internet limitata o restrizioni relative all'utilizzo di modelli di AI oppure se vuoi semplicemente sperimentare modelli di ricerca open source.

Un LLM locale offre un'alternativa al supporto LLM integrato in Android Studio. Tuttavia, Gemini in Android Studio in genere offre la migliore esperienza di sviluppo per Android perché è ottimizzato per Android e supporta tutte le funzionalità di Android Studio. Con Gemini, puoi scegliere tra una serie di modelli per le tue attività di sviluppo Android, tra cui il modello predefinito senza costi o modelli a cui si accede con una chiave API Gemini a pagamento.

Il supporto degli LLM locali richiede l'installazione di un provider LLM come LM Studio o Ollama sul computer locale, insieme a un modello compatibile a tua scelta.

Android SDK Upgrade Assistant ora supporta Android 16 / API 36

La migrazione da Android 15 / API 35 ad Android 16 / API 36 è stata aggiunta all'SDK Upgrade Assistant di Android. Per ricevere assistenza per la migrazione, vai a Strumenti > Assistente per l'upgrade dell'SDK Android.

Plug-in Android per Gradle 9.0

Il plug-in Android per Gradle 9.0 è una nuova versione principale di AGP e introduce modifiche al comportamento e alle API.

Per eseguire l'aggiornamento al plug-in Android per Gradle 9.0.0-alpha02, utilizza Android Gradle plugin Upgrade Assistant in Android Studio Narwhal 4 Feature Drop | 2025.1.4.

L'assistente per l'upgrade di AGP aiuta a preservare i comportamenti esistenti durante l'upgrade del progetto, se appropriato, consentendoti di eseguire l'upgrade del progetto per utilizzare AGP 9.0, anche se non sei pronto ad adottare tutti i nuovi valori predefiniti di AGP 9.0.

Compatibilità

Il livello API Android massimo supportato dal plug-in Android per Gradle 9.0.0-alpha02 è il livello API 36.

Il plug-in Android per Gradle 9.0.0-alpha02 richiede Gradle 9.0.0.

Modifiche al comportamento

Il plug-in Android per Gradle 9.0 ha i seguenti nuovi comportamenti:

Comportamento Consiglio
Il plug-in Android per Gradle 9.0 utilizza la versione r28c dell'NDK per impostazione predefinita. Valuta la possibilità di specificare in modo esplicito la versione dell'NDK che vuoi utilizzare.
Il plug-in Android Gradle 9.0 richiede per impostazione predefinita che i consumatori di una libreria utilizzino la stessa versione dell'SDK di compilazione o una versione successiva. Utilizza lo stesso SDK di compilazione o una versione successiva quando utilizzi una libreria. Se non è possibile o se vuoi dare più tempo ai consumatori di una libreria che pubblichi per passare a un'altra, imposta AarMetadata.minCompileSdk in modo esplicito.

AGP 9.0 include aggiornamenti ai valori predefiniti delle seguenti proprietà di Gradle. In questo modo, puoi scegliere di mantenere il comportamento di AGP 8.13 durante l'upgrade:

Proprietà Funzione Passaggio da AGP 8.13 ad AGP 9.0 Consiglio
android.uniquePackageNames Impone che ogni libreria abbia un nome di pacchetto distinto. falsetrue Specifica nomi di pacchetti univoci per tutte le librerie all'interno del progetto. Se non è possibile, puoi disattivare questo flag durante la migrazione.
android.dependency.useConstraints Controlla l'utilizzo dei vincoli di dipendenza tra le configurazioni.
Il valore predefinito in AGP 9.0 è false, che utilizza solo i vincoli nei test dei dispositivi dell'applicazione (AndroidTest). Se imposti questo valore su true, verrà ripristinato il comportamento della versione 8.13.
truefalse Non utilizzare vincoli di dipendenza ovunque, a meno che non siano necessari. L'accettazione del nuovo valore predefinito di questo flag attiva anche le ottimizzazioni nel processo di importazione del progetto, che dovrebbe ridurre il tempo di importazione per le build con molti sottoprogetti di librerie Android.
aandroid.enableAppCompileTimeRClass Compila il codice nelle applicazioni in base a una classe R non finale, allineando la compilazione delle applicazioni a quella delle librerie.
Ciò migliora l'incrementalità e apre la strada a future ottimizzazioni delle prestazioni del flusso di elaborazione delle risorse.
falsetrue Molti progetti possono semplicemente adottare il nuovo comportamento senza modifiche al codice sorgente. Se i campi della classe R vengono utilizzati in un punto che richiede una costante, ad esempio i casi switch, esegui il refactoring per utilizzare istruzioni if concatenate.
android.sdk.defaultTargetSdkToCompileSdkIfUnset Utilizza la versione dell'SDK di compilazione come valore predefinito per la versione dell'SDK target in app e test.
Prima di questa modifica, la versione dell'SDK target veniva impostata per impostazione predefinita sulla versione dell'SDK minima.
falsetrue Specifica esplicitamente la versione dell'SDK target per app e test.
android.onlyEnableUnitTestForTheTestedBuildType Crea solo componenti di test delle unità per il tipo di build testato.
Nel progetto predefinito, questo comporta un singolo test unitario per il debug, mentre il comportamento precedente prevedeva l'esecuzione di test unitari per il debug o il rilascio.
falsetrue Se il tuo progetto non richiede l'esecuzione di test sia per il debug che per il rilascio, non è necessaria alcuna modifica.
android.proguard.failOnMissingFiles La build non riesce e viene visualizzato un errore se uno dei file di conservazione specificati nel DSL AGP non esiste sul disco. Prima di questa modifica, gli errori di battitura nei nomi dei file comportavano l'ignoramento silenzioso dei file. falsetrue Rimuovi eventuali dichiarazioni di file Proguard non validi
android.r8.optimizedResourceShrinking Consente a R8 di conservare meno risorse Android considerando insieme classi e risorse Android. falsetrue Se le regole di conservazione del progetto sono già state completate, non è necessaria alcuna modifica.
android.r8.strictFullModeForKeepRules Consente a R8 di conservare meno elementi non conservando implicitamente il costruttore predefinito quando una classe viene conservata. ovvero -keep class A non implica più -keep class A { <init>(); }
falsetrue Se le regole di conservazione del progetto sono già state completate, non è necessaria alcuna modifica.

Sostituisci -keep class A con -keep class A { <init>(); } nelle regole di conservazione del progetto per tutti i casi in cui è necessario conservare il costruttore predefinito.
android.defaults.buildfeatures.shaders Attiva la compilazione degli shader in tutti i sottoprogetti truefalse Attiva la compilazione degli shader solo nei sottoprogetti che contengono shader da compilare impostando quanto segue nei file di build Gradle di questi progetti:
android {
  buildFeatures {
    shaders = true
  }
}

Funzionalità rimosse

Il plug-in Android per Gradle 9.0 rimuove le seguenti funzionalità:

DSL modificato

Il plug-in Android per Gradle 9.0 presenta le seguenti modifiche DSL che causano interruzioni:

DSL rimossa

Il plug-in Android per Gradle 9.0 rimuove:

Proprietà Gradle rimosse

Le seguenti proprietà Gradle sono state inizialmente aggiunte come modi per disattivare globalmente le funzionalità abilitate per impostazione predefinita.

Queste funzionalità sono disattivate per impostazione predefinita a partire da AGP 8.0 o versioni precedenti. Attiva queste funzionalità solo nei sottoprogetti che le utilizzano per una compilazione più efficiente.

Proprietà Funzione Sostituzione
android.defaults.buildfeatures.aidl Attiva la compilazione AIDL in tutti i progetti secondari Attiva la compilazione AIDL solo nei sottoprogetti in cui sono presenti origini AIDL impostando la seguente proprietà nei file di build Gradle di questi progetti:
android {
  buildFeatures {
    aidl = true
  }
}
nel file di build Gradle di ogni progetto secondario contenente origini AIDL
android.defaults.buildfeatures.renderscript Attiva la compilazione di RenderScript in tutti i sottoprogetti Attiva la compilazione di renderscript solo nei sottoprogetti in cui sono presenti origini renderscript impostando la seguente proprietà nei file di build Gradle di questi progetti:
android {
  buildFeatures {
    renderScript = true
  }
}

API rimosse

Il plug-in Android per Gradle 9.0 rimuove:

  • Le API BaseExtension.registerTransform deprecate e disattivate, che sono rimaste solo per consentire la compilazione in base all'ultima versione di AGP durante il targeting dell'esecuzione su AGP 4.2 o versioni precedenti.

Proprietà Gradle applicate

AGP 9.0 genera un errore se imposti le seguenti proprietà Gradle.

L'assistente per l'upgrade del plug-in Android per Gradle non eseguirà l'upgrade dei progetti ad AGP 9.0 che utilizzano queste proprietà.

Proprietà Funzione
android.r8.integratedResourceShrinking La riduzione delle risorse ora viene sempre eseguita nell'ambito di R8. L'implementazione precedente è stata rimossa.