Android Studio 4.1 (agosto 2020)

Android Studio 4.1 è una release principale che include una serie di nuove funzionalità e miglioramenti.

4.1.3 (marzo 2021)

Questo aggiornamento minore include varie correzioni di bug. Per visualizzare un elenco delle correzioni di bug più importanti, leggi il post correlato nel blog degli aggiornamenti delle release.

4.1.2 (gennaio 2021)

<p>
  This minor update includes various bug fixes.
  To see a list of notable bug fixes, read the related post on the
  <a href="https://androidstudio.googleblog.com/2021/01/android-studio-412-available.html">
    Release Updates blog</a>.
</p>
<p><b>4.1.1 (November 2020)</b></p>

<p>
  This minor update includes various bug fixes.
  To see a list of notable bug fixes, read the related post on the
  <a href="https://androidstudio.googleblog.com/2020/11/android-studio-411-available.html">
    Release Updates blog</a>.
</p>

Nuovo Database Inspector

Controlla, esegui query e modifica i database nell'app in esecuzione utilizzando il nuovo Database Inspector. Per iniziare, esegui il deployment dell'app su un dispositivo con livello API 26 o versioni successive e seleziona Visualizza > finestre degli strumenti > Database Inspector dalla barra dei menu.

Per scoprire di più, consulta Eseguire il debug del database con Database Inspector.

Esegui l'emulatore Android direttamente in Android Studio

Ora puoi eseguire l'emulatore Android direttamente in Android Studio. Utilizza questa funzionalità per risparmiare spazio sullo schermo, per spostarti rapidamente tra l'emulatore e la finestra dell'editor utilizzando le scorciatoie da tastiera e per organizzare il flusso di lavoro IDE e emulatore in un'unica finestra dell'applicazione.

L&#39;emulatore si avvia in una finestra dello strumento in Android Studio.

Per saperne di più, consulta la documentazione di Android Emulator.

Utilizzare i modelli TensorFlow Lite

La funzionalità ML Model Binding ti consente di importare facilmente i file del modello .tflite e utilizzarli nei tuoi progetti. Android Studio genera classi facili da usare per consentirti di eseguire il modello con meno codice e una maggiore sicurezza del tipo.

Modelli supportati

L'attuale implementazione di ML Model Binding supporta i modelli di classificazione delle immagini e di trasferimento dello stile, a condizione che siano migliorati con i metadati. Nel tempo, il supporto verrà esteso ad altri domini di problemi, come il rilevamento di oggetti, la segmentazione delle immagini e la classificazione del testo.

Su TensorFlow Hub è disponibile un'ampia gamma di modelli preaddestrati con metadati. Puoi anche aggiungere metadati a un modello TensorFlow Lite, come descritto in Aggiunta di metadati al modello TensorFlow Lite.

Importare un file del modello

Per importare un file modello supportato:

  1. Apri la finestra di dialogo di importazione del modello TensorFlow Lite nel menu File in File > Nuovo > Altro > Modello TensorFlow Lite.
  2. Seleziona il file del modello .tflite che hai scaricato o creato in precedenza.
  3. Fai clic su Fine.

Il file del modello viene importato nel progetto e inserito nella cartella ml/ Se la directory non esiste, Android Studio la crea per te.

Importa un modello TensorFlow Lite

Visualizzare i metadati e l'utilizzo del modello

Per visualizzare i dettagli di un modello importato e ricevere istruzioni su come utilizzarlo nella tua app, fai doppio clic sul file del modello nel progetto per aprire la pagina del visualizzatore del modello, che mostra quanto segue:

  • Modello: descrizione generale del modello
  • Tensori:descrizione dei tensori di input e output
  • Codice di esempio: esempio di come interfacciarsi con il modello nell'app

Ecco un esempio che utilizza mobilenet_v1_0.25_160_quantized.tflite:

Come dimostra l'esempio, Android Studio crea una classe chiamata MobilenetV1025160Quantized per interagire con il modello.

Se il modello non dispone di metadati, questa schermata fornirà solo informazioni minime.

Problemi noti e soluzioni alternative

  • Il supporto per i modelli TensorFlow Lite per domini di problemi diversi dalla classificazione delle immagini e dal trasferimento di stili è attualmente limitato. Sebbene l'importazione dovrebbe funzionare correttamente, alcuni input e/o output del modello sono rappresentati da TensorBuffers anziché da tipi di entità amigabili. Per i modelli senza metadati, tutti gli input e gli output del modello saranno TensorBuffers.
  • I modelli con tipi di dati Input e Output diversi da DataType.UINT8 o DataType.FLOAT32 non sono supportati.

Questa funzionalità è ancora in fase di sviluppo, quindi fornisci un feedback o segnala i bug.

Native Memory Profiler

Profiler della memoria di Android Studio ora include un Profiler della memoria nativa per le app di cui è stato eseguito il deployment su dispositivi fisici con Android 10 o versioni successive. Con lo strumento di profiling della memoria nativo, puoi registrare le allocazioni e le dealocare della memoria dal codice nativo e ispezionare le statistiche cumulative sugli oggetti nativi.

Una registrazione in Native Memory Profiler

Per scoprire di più su Native Memory Profiler, consulta Esaminare l'utilizzo della memoria dell'app con Memory Profiler.

Problemi noti e soluzioni alternative

Lo strumento di analisi della memoria nativa in Android Studio 4.1 non funziona per i dispositivi Android 11. Il supporto per il profiling dei dispositivi Android 11 è attualmente disponibile nella release di anteprima 4.2".

A partire dalla versione iniziale 4.1, il profiling all'avvio dell'app è stato disattivato. Questa opzione verrà attivata in una release futura.

Come soluzione alternativa, puoi utilizzare il profiler a riga di comando autonomo Perfetto per acquisire i profili di avvio.

Interfaccia utente di System Trace: selezione più facile, nuova scheda di analisi e più dati di rendering dei frame

L'interfaccia utente di System Trace nel profiler di Android Studio include i seguenti miglioramenti:

  • Selezione di una casella:nella sezione Thread, ora puoi trascinare il mouse per eseguire una selezione di una casella di un'area rettangolare, che puoi aumentare facendo clic sul pulsante Zoom sulla selezione Pulsante Zoom su selezione dei profiler in alto a destra (oppure utilizzare la scorciatoia da tastiera M). Quando trascini e inserisci thread simili uno accanto all'altro, puoi selezionarne più di uno per esaminarli tutti contemporaneamente. Ad esempio, potresti voler eseguire un'analisi su più thread di lavoro.

  • Scheda Riepilogo:la nuova scheda Riepilogo nel riquadro Analisi mostra:

    • Statistiche aggregate per tutte le occorrenze di un evento specifico, ad esempio un conto delle occorrenze e la durata minima/massima.

    • Statistiche sugli eventi traccia per l'occorrenza selezionata.

    • Dati sulla distribuzione dello stato dei thread.

    • Le occorrenze più lunghe dell'evento traccia selezionato.

    Per passare a un'altra occorrenza, seleziona un'altra riga della tabella.

  • Dati di visualizzazione: nella sezione Display, le nuove tempistiche per SurfaceFlinger e VSYNC ti aiutano a esaminare i problemi di rendering nell'interfaccia utente della tua app.

Per istruzioni di base sull'utilizzo per registrare una traccia di sistema, consulta la sezione Registrare le tracce di Esaminare l'attività della CPU con il profiler della CPU.

Profili autonomi ora disponibili

Con i nuovi profiler autonomi, ora è possibile eseguire il profiling dell'app senza eseguire l'IDE Android Studio completo.

Per istruzioni sull'utilizzo dei profiler autonomi, vedi Eseguire i profiler autonomi.

Supporto della navigazione Dagger

Azioni del riquadro IDE per passare ai consumatori e ai provider Dagger

Android Studio semplifica la navigazione tra il codice correlato a Dagger fornendo nuove azioni per la barra laterale e ampliando il supporto nella finestra Trova utilizzi.

  • Nuove azioni del riquadro laterale: per i progetti che utilizzano Dagger, l'IDE fornisce azioni del riquadro laterale che ti aiutano a spostarti tra il codice annotato con Dagger. Ad esempio, facendo clic sull'azione del riquadro accanto a un metodo che utilizza un determinato tipo, si accede al fornitore di quel tipo. Al contrario, facendo clic sull'azione del riquadro, viene visualizzata la posizione in cui un tipo viene utilizzato come dipendenza.

  • Nodo Trova utilizzi: quando richiami Trova utilizzi su un fornitore di un determinato tipo, la finestra Trova ora include un nodo Consumatori di dipendenze che elenca i consumatori di quel tipo. Al contrario, se la invochi su un consumer di una dipendenza iniettata da Dagger, la finestra Trova mostra il provider di quella dipendenza.

Componenti di Material Design: temi e stili aggiornati nei nuovi modelli di progetto

Animazione: creazione di un progetto in Android Studio con nuove proprietà di Material Design.

Per impostazione predefinita, i modelli di Android Studio nella finestra di dialogo Crea nuovo progetto ora utilizzano Material Design Components (MDC) e rispettano le linee guida aggiornate per temi e stili. Gli aggiornamenti includono:

  • MDC: i progetti dipendono da com.google.android.material:material in build.gradle. I temi dell'app di base utilizzano elementi Theme.MaterialComponents.* principali e sostituiscono gli attributi "on" e di colore MDC aggiornati.

  • Risorse di colore: le risorse di colore in colors.xml utilizzano nomi letterali (ad esempio purple_500 anziché colorPrimary).

  • Risorse tema: le risorse tema si trovano in themes.xml (anziché in styles.xml) e utilizzano nomi Theme.<var><var>.

  • Tema scuro: i temi dell'applicazione di base utilizzano elementi principali DayNight e sono suddivisi tra res/values e res/values-night.

  • Attributi tema: per fare riferimento alle risorse di colore vengono utilizzati gli attributi tema (ad esempio ?attr/colorPrimary) nei layout e negli stili per evitare colori hardcoded.

IntelliJ IDEA 2020.1

L'IDE Android Studio di base è stato aggiornato con i miglioramenti di IntelliJ IDEA tramite la release 2020.1, tra cui una nuova finestra Commit che consente le operazioni di controllo della versione e una nuova modalità Zen che può essere attivata/disattivata selezionando Visualizza > Aspetto > Entra in modalità senza distrazioni.

Per scoprire di più sui miglioramenti della versione 2020.1, consulta IDEA 2020.1.

Modifiche alla directory di configurazione dell'IDE

Le posizioni delle directory di configurazione utente sono state modificate come segue:

Windows

Sintassi: %APPDATA%\Google&lt;product><version>

Esempio: C:\Users\YourUserName\AppData\Roaming\Google\AndroidStudio4.1

macOS

Sintassi: ~/Library/Application Support/Google/<product><version>

Esempio: ~/Library/Application Support/Google/AndroidStudio4.1

Linux

Sintassi: ~/.config/Google/<product><version>

Esempio: ~/.config/Google/AndroidStudio4.1

Queste nuove posizioni delle directory sono conformi ai recenti aggiornamenti di IntelliJ IDEA, l'IDE su cui si basa Android Studio.

Se Studio non si riavvia dopo un upgrade, potrebbe essere necessario eliminare la directory di configurazione da una versione precedente di Studio. Per ulteriori informazioni, consulta la pagina relativa ai problemi noti.

Kotlin 1.3.72

Android Studio 4.1 include Kotlin 1.3.72, che include una serie di correzioni per migliorare l'evidenziazione, le ispezioni e il completamento del codice in Kotlin. Per maggiori dettagli, consulta il log delle modifiche di Kotlin 1.3.72.

Anteprima della visualizzazione personalizzata

Quando crei una vista personalizzata (ad esempio estendendo la classe View o Button), Android Studio ora mostra un'anteprima della vista personalizzata. Utilizza il menu a discesa nella barra degli strumenti per passare da una visualizzazione personalizzata all'altra oppure fai clic sui pulsanti per adattare i contenuti in verticale o in orizzontale.

Visualizza l&#39;anteprima delle visualizzazioni personalizzate nell&#39;IDE.

Nota: se non vedi le modifiche nell'anteprima, selezionate Compila > Crea progetto nella barra dei menu.

Simboli per i report sugli arresti anomali nativi

Quando si verifica un arresto anomalo o un ANR nel codice nativo, il sistema genera un'analisi dello stack, ovvero un'istantanea della sequenza di funzioni nidificate chiamate nel programma fino al momento in cui si è verificato l'arresto anomalo. Queste istantanee possono aiutarti a identificare e risolvere eventuali problemi nel codice sorgente, ma devono prima essere simboliche per tradurre nuovamente gli indirizzi macchina in nomi di funzioni leggibili da persone.

Se la tua app o il tuo gioco sono stati sviluppati utilizzando codice nativo, come C++, ora puoi caricare file di simboli di debug su Play Console per ogni versione dell'app. Play Console utilizza questi file di simboli di debug per simbolizzare le analisi dello stack della tua app, semplificando l'analisi di arresti anomali e ANR. Per scoprire come caricare i file dei simboli di debug, consulta Supporto per gli arresti anomali nativi.

Applica modifiche

Per aiutarti ad aumentare la produttività durante l'iterazione della tua app, abbiamo apportato i seguenti miglioramenti all'applicazione delle modifiche per i dispositivi con Android 11 Developer Preview 3 o versioni successive:

Velocità di deployment più elevate

Abbiamo investito molto nell'ottimizzazione della velocità di iterazione sviluppando un metodo per implementare e mantenere le modifiche su un dispositivo senza installare l'applicazione. Dopo un primo deployment, i deployment successivi sui dispositivi Android 11 utilizzando Applica modifiche al codice Icona Applica modifiche al codice o Applica modifiche e riavvia attività Icona Applicare modifiche e riavviare attività ora sono notevolmente più rapidi.

Per scoprire di più sulla differenza tra queste due azioni, consulta Applicare le modifiche.

Supporto per ulteriori modifiche al codice

Per i dispositivi con Android 11 Developer Preview 3 o versioni successive, ora puoi aggiungere metodi e poi implementare le modifiche nell'app in esecuzione facendo clic su Applica modifiche al codice Icona Applica modifiche al codice o Applica modifiche e riavvia attività Icona Applicare modifiche e riavviare attività.