Android Studio 4.2 (aprile 2021)

Android Studio 4.2 è una release importante che include una serie di nuove funzionalità e miglioramenti.

4.2.2 (giugno 2021)

Questo aggiornamento minore include varie correzioni di bug. Per visualizzare un elenco di correzioni di bug notevoli, leggi il post correlato sul blog degli aggiornamenti delle release.

4.2.1 (maggio 2021)

Questo aggiornamento secondario include il plug-in Kotlin 1.5.0 e varie correzioni di bug. Per visualizzare un elenco di correzioni di bug importanti, leggi il post correlato sul blog degli aggiornamenti delle release.

Plug-in Android per Gradle 4.2.0

L'ultima versione del plug-in Android per Gradle include molti aggiornamenti. Per saperne di più, leggi le note di rilascio complete del plug-in Android per Gradle.

Modifiche alla compatibilità e alla configurazione di Gradle

Quando viene eseguito in Android Studio, lo strumento di compilazione Gradle utilizza la JDK in bundle di Studio. Nelle versioni precedenti, JDK 8 era incluso in Studio. Nella versione 4.2, invece, è incluso JDK 11. Quando utilizzi il nuovo JDK in bundle per eseguire Gradle, ciò potrebbe causare alcune incompatibilità o influire sulle prestazioni della JVM a causa delle modifiche al Garbage Collector. Questi problemi sono descritti nelle note di rilascio di AGP.

Opzione per ottimizzare il tempo di sincronizzazione di Gradle

Per migliorare le prestazioni di Gradle Sync, Android Studio salta la creazione dell'elenco delle attività durante la sincronizzazione. Ciò consente a Gradle Sync di essere completato più rapidamente e migliora la reattività dell'interfaccia utente per progetti molto grandi. Questa opzione è attiva per impostazione predefinita in Android Studio 4.2. Per disattivarla, vai a File > Impostazioni > Sperimentale (Preferenze > Sperimentale su Mac) e deseleziona Non creare l'elenco delle attività Gradle durante la sincronizzazione di Gradle.

Database Inspector

Miglioramenti dell'editor di query

L'ispettore database include alcuni miglioramenti per aiutarti a scrivere ed eseguire le istruzioni SQL personalizzate. Quando apri l'inspector e una scheda Nuova query, dovresti notare una superficie di modifica più grande e ridimensionabile per creare e formattare le query, come mostrato di seguito.

Editor di DB Inspector

Inoltre, ora forniamo una cronologia delle query precedenti. Quando fai clic sul pulsante Mostra cronologia query Pulsante Mostra cronologia delle query{: .inline-icon} , dovresti visualizzare un elenco delle query eseguite in precedenza sul database attualmente selezionato. Fai clic su una query nell'elenco per visualizzare un'anteprima della query completa nell'editor e premi Invio per copiarla nell'editor. Poi, fai clic su Esegui per eseguire l'istruzione.

Esegui comando nell'editor query

Modalità offline

Nelle versioni precedenti di Android Studio, la disconnessione da un processo dell'app durante l'utilizzo di Database Inspector comportava la chiusura dell'inspector e dei relativi dati. In Android Studio 4.2, abbiamo aggiunto la possibilità di continuare a esaminare i database della tua app dopo la disconnessione di un processo, semplificando il debug dell'app dopo un arresto anomalo.

Quando si verifica una disconnessione, Database Inspector scarica i database e li rende disponibili in modalità offline. Quando sei offline, puoi aprire tabelle ed eseguire query.

Tieni presente che quando ti riconnetti a un processo dell'app in tempo reale, Database Inspector torna alla modalità in tempo reale e mostra solo i dati presenti sul dispositivo. ovvero i dati visualizzati in modalità offline non vengono mantenuti quando ti riconnetti a un processo dell'app. Per questo motivo, lo strumento di controllo del database non consente di modificare o eseguire istruzioni di modifica in modalità offline.

Upgrade Assistant per AGP

Un nuovo plug-in Upgrade Assistant per Android Gradle può aiutarti ad aggiornare la versione di AGP per il tuo progetto.

Finestra di dialogo Assistente upgrade del plug-in Android per Gradle

Basato sulla funzionalità di upgrade di AGP esistente, questo strumento ti guida negli aggiornamenti/refactoring a livello di progetto e include un'anteprima degli aggiornamenti per evitare potenziali modifiche che causano interruzioni prima di eseguire l'upgrade di AGP.

Anteprima delle modifiche da eseguire con l'assistente all'upgrade

Traccia di sistema: metriche migliorate per memoria e grafica

Nel Profiler CPU, la funzionalità Traccia sistema ora include nuove metriche per l'analisi delle prestazioni delle app e include quanto segue:

  • Tabella degli eventi. Elenca tutti gli eventi di traccia nel thread attualmente selezionato.

  • BufferQueue. Nella sezione Display, questa nuova traccia mostra il conteggio dei buffer della superficie dell'app BufferQueue (0, 1 o 2) per aiutarti a comprendere lo stato dei buffer delle immagini mentre si spostano tra i componenti grafici di Android.

    Coda del buffer di traccia di sistema

  • Frequenza CPU. Nella sezione Core CPU, questa nuova traccia mostra la frequenza della CPU per core, indicando l'intensità di lavoro di ciascun core.

    Frequenza CPU traccia di sistema

  • Memoria processo (RSS). Questa nuova finestra mostra la quantità di memoria fisica attualmente in uso da parte dell'app.

    Memoria di processo (RSS) della traccia di sistema

Per maggiori dettagli, vedi Esaminare l'attività della CPU con CPU Profiler.

Nuova azione di aggiornamento di Layout Inspector

Introdotto in Android Studio 4.0, Layout Inspector è stato progettato per l'ispezione in tempo reale dello stack UI dell'app in esecuzione. Tuttavia, potresti non volere sempre che Layout Inspector rifletta immediatamente ciò che accade nella tua app, in quanto potresti voler ispezionare uno snapshot del layout dell'app in un momento specifico o ridurre al minimo l'impatto sulle prestazioni degli aggiornamenti live sulla tua app.

Per caricare manualmente uno snapshot dei dati dell'interfaccia utente dalla tua app, disattiva prima l'opzione Aggiornamenti in tempo reale. Puoi quindi fare clic sul pulsante Aggiorna {:.inline-icon} per acquisire un nuovo snapshot dello stack della UI da esaminare. L'ispettore del layout ora ricorda la tua preferenza di mantenere Aggiornamenti live attivi o disattivi tra le sessioni.

Supporto di Safe Args

Safe Args è un plug-in Gradle che genera classi di oggetti e builder semplici per la navigazione con controllo del tipo e l'accesso a eventuali argomenti associati. Android Studio ora include un supporto più ricco quando si lavora con Safe Args, come descritto di seguito:

  • Completamenti automatici per Directions, Args e le varie classi di builder
  • Supporto per i plug-in Safe Args Java e Kotlin
  • Navigazione dall'origine all'XML

R8 retrace ora disponibile negli strumenti a riga di comando

Disponibile nella versione 4.0 degli strumenti a riga di comando, R8 retrace è uno strumento autonomo per ottenere lo stack trace originale da uno stack trace offuscato.

Puoi scaricare questo pacchetto con SDK Manager, che installa R8 retrace in android_sdk/cmdline-tools. In alternativa, puoi scaricare il pacchetto di strumenti a riga di comando autonomi.

Per informazioni sull'utilizzo, consulta R8 retrace nella guida dell'utente.

Eseguire il deployment su più dispositivi

Per semplificare il test delle app su più dispositivi e livelli API, ora puoi eseguire il deployment della tua app su più dispositivi o emulatori contemporaneamente seguendo questa procedura:

  1. Scegli Seleziona più dispositivi nel menu a discesa del dispositivo di destinazione (nella parte superiore centrale dell'IDE).

    Menu a discesa del dispositivo di destinazione

  2. Seleziona i dispositivi di destinazione e fai clic su Ok.

    Modificare la finestra di dialogo del set di dispositivi

  3. Esegui l'app.

Nuova impostazione removable per i moduli delle funzionalità

Il plug-in Android Gradle 4.2 utilizza bundletool 1.0.0, che introduce una modifica del comportamento per le app che utilizzano moduli delle funzionalità: qualsiasi modulo delle funzionalità specificato come dist:install-time che non è contrassegnato esplicitamente come dist:removable diventerà non rimovibile per impostazione predefinita. Questa nuova impostazione ottimizza la fusione dei moduli al momento dell'installazione con il modulo base, migliorando potenzialmente le prestazioni dell'app per alcune app.

Per mantenere rimovibili i moduli delle funzionalità, imposta dist:removable="true" su qualsiasi modulo che vuoi disinstallare.

Per saperne di più su questa nuova impostazione, consulta la documentazione del tag dist:removable nel manifest del modulo delle funzionalità.

Applica modifiche

Per aiutarti a essere più produttivo mentre esegui l'iterazione della tua app, abbiamo apportato i seguenti miglioramenti ad Applica modifiche per i dispositivi con Android 11 o versioni successive:

Supporto per ulteriori modifiche al codice

Per i dispositivi con Android 11 o versioni successive, ora puoi aggiungere campi primitivi finali statici e poi implementare queste modifiche nell'app in esecuzione facendo clic su Applica modifiche al codice Icona Applica modifiche al codice o Applica modifiche e riavvia attività Icona Applica modifiche e riavvia attività.

Ora puoi anche aggiungere risorse e poi implementare le modifiche nell'app in esecuzione sui dispositivi Android 11 facendo clic su Applica modifiche e riavvia attività Icona Applica modifiche e riavvia attività.

Procedure guidate Nuovo progetto e Nuovo modulo aggiornate

Le procedure guidate Nuovo progetto e Nuovo modulo sono state aggiornate per semplificare la navigazione, la selezione di un modello e l'inserimento di informazioni sul nuovo progetto o modulo.

È stata rimossa anche l'opzione per importare il pacchetto .JAR/.AAR dalla procedura guidata Nuovo modulo. Per importare un file JAR o AAR nel tuo progetto, utilizza la finestra di dialogo Struttura progetto.

Kotlin 1.4.31

Android Studio 4.2 include Kotlin 1.4.31. Consulta il changelog di Kotlin 1.4.0 per esaminare le modifiche principali.

Variabile di ambiente ANDROID_SDK_HOME deprecata

La variabile di ambiente ANDROID_SDK_HOME è deprecata ed è stata sostituita con ANDROID_PREFS_ROOT. Per maggiori informazioni, vedi Variabili di ambiente dell'emulatore.

Problemi noti di Android Studio 4.2

Questa sezione descrive i problemi noti esistenti in Android Studio 4.2. Per un elenco completo, vai alla pagina Problemi noti.

Android Studio 4.2.0 genera progetti con la versione di Kotlin errata: "1.5.0-release-764"

Se utilizzi Android Studio 4.2.0 e hai eseguito l'upgrade al plug-in Kotlin 1.5.0, i nuovi progetti Kotlin creati da Studio non verranno compilati a causa del seguente errore di sincronizzazione Gradle:

Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.0-release-764.

Come soluzione alternativa, sostituisci 1.5.0-release-764 con 1.5.0 nei file build.gradle del progetto.

Errore durante l'utilizzo di password diverse per la chiave e il keystore

A partire dalla versione 4.2, Android Studio viene eseguito su JDK 11. Questo aggiornamento comporta una modifica del comportamento sottostante relativa alle chiavi di firma.

Quando vai a Build > Generate Signed Bundle / APK e tenti di configurare la firma dell'app per un app bundle o un APK, l'inserimento di password diverse per la chiave e il keystore potrebbe generare il seguente errore:

Key was created with errors:
Warning: Different store and Key passwords not supported for PKCS12 Key stores

Per risolvere questo problema, inserisci la stessa password sia per la chiave che per il keystore.

Android Studio non si avvia dopo l'installazione della versione 4.2

Studio tenta di importare i precedenti .vmoptions e di pulirli per farli funzionare con il garbage collector utilizzato da JDK 11. Se il processo non va a buon fine, l'IDE potrebbe non avviarsi per alcuni utenti che hanno impostato opzioni VM personalizzate nel file .vmoptions.

Per risolvere questo problema, ti consigliamo di commentare le opzioni personalizzate in .vmoptions (utilizzando il carattere #). Il file .vmoptions può essere trovato nelle seguenti posizioni:

Windows

C:\Users\YourUserName\AppData\<var>[Local|Roaming]</var>\Google\AndroidStudio4.2\studio64.exe.vmoptions

macOS

~/Library/Application Support/Google/AndroidStudio4.2/studio.vmoptions

Linux

~/.config/Google/AndroidStudio4.2/studio64.vmoptions

Se Studio non si avvia ancora dopo aver provato questa soluzione alternativa, vedi Studio non si avvia dopo l'upgrade di seguito.