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 3 | 2025.1.3 Stabile
Plug-in Android per Gradle 8.13.0 Stabile
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
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 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.