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

Esamina, esegui query e modifica i database nell'app in esecuzione utilizzando il nuovo Controllo database. 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 viene avviato in una finestra degli strumenti in Android Studio.

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

Utilizzo dei 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 di tipo.

Modelli supportati

L'attuale implementazione dell'associazione di modelli ML supporta la classificazione delle immagini e i modelli di trasferimento dello stile, purché 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

Visualizza 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 campione: esempio di come interfacciarsi con il modello nell'app

Ecco un esempio in cui viene utilizzato 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 di 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

Android Studio Memory Profiler ora include un Profiler di memoria nativo per le app distribuite su dispositivi fisici con Android 10 o versioni successive. Con lo strumento di profiling della memoria nativo, puoi registrare le allocazioni e le deallocazioni 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 release 4.1 iniziale, la profilazione all'avvio delle app è stata disattivata. Questa opzione verrà attivata in una release futura.

Come soluzione alternativa, puoi utilizzare il profilo 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 casella: nella sezione Thread, ora puoi trascinare il mouse per selezionare una casella di un'area rettangolare, che puoi aumentare lo zoom facendo clic sul pulsante Zoom alla selezione Pulsante Zoom su selezione dei profiler in alto a destra (o utilizza 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 CPU Profiler.

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 gutter: per i progetti che utilizzano Dagger, l'IDE fornisce azioni gutter che consentono di navigare tra il codice annotato da Dagger. Ad esempio, facendo clic sull'azione della canalina 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 del tema: nelle risorse colore viene fatto riferimento agli attributi del 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 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 i dettagli, consulta il log delle modifiche Kotlin 1.3.72.

Anteprima della visualizzazione personalizzata

Ora, quando crei una visualizzazione personalizzata (ad esempio, estendendo la classe View o Button), Android Studio ti mostra un'anteprima. Utilizza il menu a discesa nella barra degli strumenti per passare da una visualizzazione personalizzata all'altra oppure fai clic sui pulsanti per scorrere i contenuti verticalmente o orizzontalmente.

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. Questi snapshot possono aiutarti a identificare e risolvere eventuali problemi nell'origine, ma devono prima essere simbolizzati per convertire gli indirizzi delle macchine in nomi di funzioni leggibili da una persona.

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 Applica modifiche e riavvia 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 codice o Applica modifiche e riavvia attività Icona Applicare modifiche e riavviare attività.