Android Studio 3.5 (agosto 2019)

Android Studio 3.5 è una release principale e il risultato di Project Marble. A partire dal rilascio di Android Studio 3.3, l'iniziativa Project Marble ha interessato più release incentrate sul miglioramento di tre aree principali dell'IDE: integrità del sistema, ottimizzazione delle funzionalità e correzione dei bug.

Per informazioni su questi e altri aggiornamenti di Project Marble, leggi il post del blog per sviluppatori Android o le sezioni seguenti.

Vogliamo anche ringraziare tutti i nostri collaboratori della community che hanno contribuito allo sviluppo di questa release.

3.5.3 (dicembre 2019)

Questo aggiornamento minore include varie correzioni di bug e miglioramenti delle prestazioni.

3.5.2 (novembre 2019)

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

3.5.1 (ottobre 2019)

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

Project Marble: integrità del sistema

Questa sezione descrive le modifiche in Android Studio 3.5 incentrate sul miglioramento dell'integrità del sistema.

Impostazioni di memoria consigliate

Ora Android Studio ti invia una notifica se rileva che potresti migliorare le prestazioni aumentando la quantità massima di RAM che il sistema operativo deve allocare per i processi di Android Studio, come l'IDE di base, il daemon Gradle e il daemon Kotlin. Puoi accettare le impostazioni consigliate facendo clic sul link di azione nella notifica oppure puoi modificarle manualmente selezionando File > Impostazioni (o Android Studio > Preferenze su macOS) e individuando la sezione Impostazioni memoria in Aspetto e comportamento > Impostazioni di sistema. Per saperne di più, consulta Dimensioni massime dell'heap.

Una notifica relativa alle impostazioni di memoria consigliate.

Una notifica relativa alle impostazioni di memoria consigliate.

Report sull'utilizzo della memoria

I problemi di memoria in Android Studio a volte sono difficili da riprodurre e segnalare. Per aiutarti a risolvere il problema, Android Studio ti consente di generare un report sull'utilizzo della memoria facendo clic su Guida > Analizza utilizzo memoria nella barra dei menu. Quando lo fai, l'IDE esegue la sanificazione locale dei dati per rilevare le informazioni personali prima di chiederti se vuoi inviarli al team di Android Studio per contribuire a identificare la causa dei problemi di memoria. Per scoprire di più, vedi Eseguire un report sull'utilizzo della memoria.

Un report sull'utilizzo della memoria.

Un report sull'utilizzo della memoria.

Windows: ottimizzazione dell'I/O dei file antivirus

Android Studio ora controlla automaticamente se determinate directory del progetto sono escluse dalla scansione antivirus in tempo reale. Quando è possibile apportare modifiche per migliorare le prestazioni della build, Android Studio ti invia una notifica e fornisce istruzioni su come ottimizzare la configurazione dell'antivirus. Per scoprire di più, consulta Ridurre al minimo l'impatto del software antivirus sulla velocità di compilazione.

Project Marble: perfezionamento delle funzionalità

Questa sezione descrive le modifiche in Android Studio 3.5 incentrate sul miglioramento delle funzionalità esistenti.

Applica modifiche

Applica modifiche consente di eseguire il push delle modifiche al codice e alle risorse nell'applicazione in esecuzione senza riavviarla e, in alcuni casi, senza riavviare l'attività corrente. L'opzione Applica modifiche implementa un approccio completamente nuovo per preservare lo stato dell'app. A differenza di Instant Run, che riscriviva il bytecode dell'APK, Applica modifiche ridefinisce le classi in tempo reale sfruttando la misurazione del runtime supportata in Android 8.0 (livello API 26) o versioni successive.

Per scoprire di più, consulta Applicare le modifiche.

I pulsanti della barra degli strumenti per Applica modifiche.

I pulsanti della barra degli strumenti per Applica modifiche.

Flusso di deployment delle app

L'IDE ha un nuovo menu a discesa che ti consente di selezionare rapidamente il dispositivo su cui vuoi eseguire il deployment dell'app. Questo menu include anche una nuova opzione che ti consente di eseguire la tua app su più dispositivi contemporaneamente.

Menu a discesa Dispositivo target.

Menu a discesa Dispositivo target.

Rilevamento migliorato della sincronizzazione e della cache di Gradle

L'IDE ora rileva meglio quando Gradle cancella periodicamente la cache di compilazione per ridurre il consumo dell'hard disk. Nelle versioni precedenti, questo stato causava la segnalazione di dipendenze mancanti da parte dell'IDE e il fallimento della sincronizzazione di Gradle. Ora l'IDE scarica semplicemente le dipendenze in base alle necessità per garantire il completamento della sincronizzazione di Gradle.

Output degli errori di compilazione migliorato

La finestra Compilazione Icona della finestra di compilazione ora fornisce una migliore generazione di report sugli errori, ad esempio un link al file e alla riga dell'errore segnalato, per le seguenti procedure di compilazione:

  • Compilazione e collegamento AAPT
  • R8 e ProGuard
  • Dexing
  • Unità di misura delle risorse
  • Analisi del file XML
  • Compilazione di Javac, Kotlinc e CMake

Upgrade dei progetti

Esperienza di aggiornamento migliorata per fornire più informazioni e azioni per aiutarti ad aggiornare l'IDE e il plug-in Android Gradle. Ad esempio, altri errori di sincronizzazione e di generazione includono azioni per aiutarti a mitigare gli errori durante l'aggiornamento.

È importante tenere presente che puoi aggiornare l'IDE indipendentemente da altri componenti, come il plug-in Android per Gradle. Di conseguenza, puoi aggiornare in sicurezza l'IDE non appena è disponibile una versione più recente e aggiornare gli altri componenti in un secondo momento.

Layout Editor

Android Studio 3.5 include diversi miglioramenti alla visualizzazione, alla gestione e all'interazione dei layout.

Quando utilizzi ConstraintLayout, una nuova sezione Vincoli nel riquadro Attributi elenca le relazioni di vincolo del componente dell'interfaccia utente selezionato. Puoi selezionare un vincolo dalla superficie di progettazione o dall'elenco dei vincoli per evidenziare il vincolo in entrambe le aree.

Relazioni di vincolo per un elemento dell'interfaccia utente selezionato.

Relazioni di vincolo per un elemento dell'interfaccia utente selezionato.

Analogamente, ora puoi eliminare una limitazione selezionandola e premendo il tasto Delete. Puoi anche eliminare una limitazione tenendo premuto il tasto Control (Command su macOS) e facendo clic sull'ancora della limitazione. Tieni presente che quando tieni premuto il tasto Control o Command e passi il mouse sopra un ancoraggio, gli eventuali vincoli associati diventano rossi per indicare che puoi fare clic per eliminarli.

Quando una visualizzazione è selezionata, puoi creare una limitazione facendo clic su una delle icone + nella sezione Widget di vincolo del riquadro Attributi, come mostrato nell'immagine seguente. Quando crei un nuovo vincolo, ora l'editor di layout seleziona e mette in evidenza il vincolo, fornendo un feedback visivo immediato per ciò che hai appena aggiunto.

Un'animazione che mostra come utilizzare il widget di vincolo per creare vincoli.

Utilizzo del widget dei vincoli per creare vincoli .

Quando crei una limitazione, l'editor di layout ora mostra solo i punti di ancoraggio idonei a cui puoi applicare la limitazione. In precedenza, l'Editor layout evidenziava tutti i punti di ancoraggio in tutte le viste, indipendentemente dal fatto che ci fossero limiti o meno. Inoltre, ora un overlay blu evidenzia il target della limitazione. Questo evidenziato è particolarmente utile quando si tenta di limitare un componente che si sovrappone a un altro.

Un'animazione che mostra come creare una limitazione per un componente sovrapposto in Android Studio 3.4.

Creazione di una limitazione per un componente sovrapposto in Android Studio 3.4.

Un'animazione che mostra come creare un vincolo per un componente sovrapposto in Android Studio 3.5.

Creazione di una limitazione per un componente sovrapposto in Android Studio 3.5.

Oltre agli aggiornamenti precedenti, Android Studio 3.5 contiene anche i seguenti miglioramenti all'editor di layout:

  • Il widget di vincolo e il menu a discesa del margine predefinito ora consentono di utilizzare le risorse delle dimensioni per i margini.
  • Nella barra degli strumenti di Layout Editor, l'elenco dei dispositivi che determinano le dimensioni dell'area di progettazione è stato aggiornato. Inoltre, è stato migliorato il comportamento di aggancio durante il ridimensionamento e i maniglie di ridimensionamento sulla superficie di progettazione ora sono sempre visibili. Quando regoli le dimensioni, vengono visualizzati nuovi overlay che mostrano le dimensioni comuni dei dispositivi.
  • L'editor di layout ha una nuova combinazione di colori che migliora la coerenza e riduce il contrasto tra componenti, testo e vincoli.
  • La modalità Blueprint ora include il supporto del testo per alcuni componenti in cui il testo non veniva visualizzato.

Per maggiori informazioni su queste modifiche, consulta Android Studio Project Marble: Editor layout.

Data Binding

Oltre ad aggiungere il supporto dell'elaborazione incrementale delle annotazioni per l'associazione di dati, l'IDE migliora le funzionalità e le prestazioni dell'editor intelligente durante la creazione di espressioni di associazione di dati in XML.

Un'animazione che mostra il rendimento dell'editor di codice su Android Studio
            3.4.

Prestazioni dell'editor di codice su Android Studio 3.4.

Un'animazione che mostra il rendimento dell'editor di codice in Android Studio
            3.5.

Miglioramento delle prestazioni di modifica del codice in Android Studio 3.5.

Supporto migliorato per i progetti C/C++

Android Studio 3.5 include diverse modifiche che migliorano il supporto per i progetti C/C++.

Miglioramenti al riquadro Varianti per la sincronizzazione di singole varianti

Ora puoi specificare sia la variante di build attiva sia l'ABI attivo nel riquadro Varianti di build. Questa funzionalità semplifica la configurazione della build per ogni modulo e può anche migliorare le prestazioni di sincronizzazione Gradle.

Per scoprire di più, consulta la sezione Modificare la variante di build.

Riquadro Crea varianti che mostra la selezione di una singola variante per ABI.

Il riquadro Varianti build con la selezione di una singola variante tramite ABI.

Versioni affiancate dell'NDK

Ora puoi utilizzare più versioni dell'NDK una accanto all'altra. Questa funzionalità offre maggiore flessibilità durante la configurazione dei progetti, ad esempio se hai progetti che utilizzano versioni diverse dell'NDK sulla stessa macchina.

Se il progetto utilizza il plug-in Android Gradle 3.5.0 o versioni successive, puoi anche specificare la versione dell'NDK da utilizzare per ogni modulo del progetto. Puoi utilizzare questa funzionalità per creare build riproducibili e mitigare le incompatibilità tra le versioni NDK e il plug-in Android Gradle.

Per scoprire di più, consulta Installare e configurare NDK, CMake e LLDB.

Assistenza ChromeOS

Android Studio ora supporta ufficialmente i dispositivi ChromeOS, come HP Chromebook x360 14, Acer Chromebook 13/Spin 13 e altri che puoi leggere nei requisiti di sistema. Per iniziare, scarica Android Studio sul tuo dispositivo ChromeOS compatibile e segui le istruzioni di installazione.

Nota: Android Studio su ChromeOS attualmente supporta il deployment dell'app solo su un dispositivo hardware collegato. Per scoprire di più, consulta Eseguire app su un dispositivo hardware.

Pubblicazione condizionale per i moduli delle funzionalità

La pubblicazione condizionale ti consente di impostare determinati requisiti di configurazione del dispositivo per il download automatico dei moduli delle funzionalità durante l'installazione dell'app. Ad esempio, puoi configurare un modulo della funzionalità che includa la funzionalità per la realtà aumentata (AR) da rendere disponibile al momento dell'installazione dell'app solo per i dispositivi che supportano l'AR.

Questo meccanismo di distribuzione attualmente supporta il controllo del download di un modulo al momento dell'installazione dell'app in base alle seguenti configurazioni del dispositivo:

  • Funzionalità hardware e software del dispositivo, inclusa la versione OpenGL ES
  • Paese dell'utente
  • Livello API

Se un dispositivo non soddisfa tutti i requisiti specificati, il modulo non viene scaricato al momento dell'installazione dell'app. Tuttavia, in un secondo momento la tua app potrebbe richiedere di scaricare il modulo on demand utilizzando la Play Core Library. Per saperne di più, consulta Configurare l'invio condizionale.

IntelliJ IDEA 2019.1

L'IDE Android Studio di base è stato aggiornato con i miglioramenti di IntelliJ IDEA tramite la release 2019.1, ad esempio la personalizzazione dei temi.

L'ultima versione di IntelliJ inclusa in Android Studio era 2018.3.4. Per ulteriori informazioni sui miglioramenti di altre versioni di IntelliJ inclusi in modo cumulativo in questa release di Android Studio, consulta i seguenti aggiornamenti di correzione dei bug:

Aggiornamenti del plug-in Android per Gradle 3.5.0

Per informazioni sulle novità del plug-in Android per Gradle 3.5.0, ad esempio il supporto migliorato per l'elaborazione delle annotazioni incrementali e i test di unità cacheabili, consulta le note di rilascio.

Collaboratori della community

Grazie a tutti i collaboratori della nostra community che ci hanno aiutato a scoprire bug e altri modi per migliorare Android Studio 3.5. In particolare, vogliamo ringraziare le seguenti persone che hanno segnalato bug P0 e P1: