Android Studio 3.0 (ottobre 2017)

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

Utenti macOS:se stai aggiornando una versione precedente di Android Studio, potresti visualizzare una finestra di dialogo di errore di aggiornamento che indica "Sono stati rilevati alcuni conflitti nell'area di installazione". Ignora semplicemente questo errore e fai clic su Annulla per riprendere l'installazione.

3.0.1 (novembre 2017)

Si tratta di un aggiornamento secondario di Android Studio 3.0 che include correzioni di bug generali e miglioramenti delle prestazioni.

Plug-in Android per Gradle 3.0.0

Il nuovo plug-in Android per Gradle include una serie di miglioramenti e nuove funzionalità, ma soprattutto migliora le prestazioni di compilazione per i progetti con un numero elevato di moduli. Quando utilizzi il nuovo plug-in con questi progetti di grandi dimensioni, dovresti riscontrare quanto segue:

  • Tempi di configurazione della build più rapidi grazie alla nuova risoluzione ritardata delle dipendenze.
  • Risoluzione delle dipendenze in base alle varianti solo per i progetti e le varianti che stai creando.
  • Tempi di build incrementali più rapidi quando si applicano modifiche semplici al codice o alle risorse.

Nota: questi miglioramenti hanno richiesto modifiche significative che interrompono alcuni dei comportamenti, DSL e API del plug-in. L'upgrade alla versione 3.0.0 potrebbe richiedere modifiche ai file di build e ai plug-in Gradle.

Questa versione include anche quanto segue:

  • Supporto di Android 8.0.
  • Supporto per la creazione di APK separati in base alle risorse della lingua.
  • Supporto delle librerie Java 8 e delle funzionalità del linguaggio Java 8 (senza il compilatore Jack).
  • Supporto per Android Support Library 1.0 (utilità di test Android e Android Test Orchestrator).
  • Velocità di build di ndk-build e cmake migliorate.
  • Miglioramento della velocità di sincronizzazione di Gradle.
  • AAPT2 ora è abilitato per impostazione predefinita.
  • L'utilizzo di ndkCompile ora è più limitato. Devi invece eseguire la migrazione a utilizzando CMake o ndk-build per compilare il codice nativo che vuoi pacchettizzare nel tuo APK. Per saperne di più, leggi Eseguire la migrazione da ndkcompile.

Per ulteriori informazioni sulle modifiche, consulta le note di rilascio del plug-in Android per Gradle.

Se vuoi eseguire l'upgrade al nuovo plug-in, consulta Eseguire la migrazione al plug-in Android per Gradle 3.0.0.

Supporto di Kotlin

Come annunciato al Google I/O 2017, il linguaggio di programmazione Kotlin è ora ufficialmente supportato su Android. Pertanto, con questa release, Android Studio include il supporto del linguaggio Kotlin per lo sviluppo Android.

Puoi incorporare Kotlin nel tuo progetto convertendo un file Java in Kotlin (fai clic su Codice > Converti file Java in file Kotlin) o creando un nuovo progetto abilitato per Kotlin utilizzando la procedura guidata Nuovo progetto.

Per iniziare, scopri come aggiungere Kotlin al tuo progetto.

Supporto delle funzionalità del linguaggio Java 8

Ora puoi utilizzare alcune funzionalità del linguaggio Java 8 e utilizzare librerie create con Java 8. Jack non è più obbligatorio e devi prima disattivarlo per utilizzare il supporto Java 8 migliorato integrato nella toolchain predefinita.

Per aggiornare il progetto in modo da supportare la nuova toolchain del linguaggio Java 8, aggiorna Source Compatibility e Target Compatibility a 1.8 nella finestra di dialogo Project Structure (fai clic su File > Project Structure). Per saperne di più, scopri come utilizzare le funzionalità del linguaggio Java 8.

Android Profiler

Il nuovo Android Profiler sostituisce lo strumento Android Monitor e fornisce una nuova suite di strumenti per misurare l'utilizzo di CPU, memoria e rete della tua app in tempo reale. Puoi eseguire il tracciamento dei metodi basato su campioni per misurare il tempo di esecuzione del codice, acquisire dump dell'heap, visualizzare le allocazioni di memoria e ispezionare i dettagli dei file trasmessi in rete.

Per aprirlo, fai clic su Visualizza > Finestre degli strumenti > Android Profiler (o fai clic su Android Profiler nella barra degli strumenti).

La cronologia degli eventi nella parte superiore della finestra mostra gli eventi di tocco, le pressioni dei tasti e le modifiche all'attività, in modo da avere più contesto per comprendere gli altri eventi di rendimento nella cronologia.

Nota: anche la visualizzazione Logcat è stata spostata in una finestra separata (in precedenza si trovava all'interno di Android Monitor, che è stato rimosso).

Nella sequenza temporale della panoramica di Android Profiler, fai clic sulle sequenze temporali CPU, MEMORIA o RETE per accedere agli strumenti di profilazione corrispondenti.

CPU Profiler

CPU Profiler ti aiuta ad analizzare l'utilizzo dei thread della CPU della tua app attivando una traccia della CPU campionata o strumentata. Poi, puoi risolvere i problemi di prestazioni della CPU utilizzando una serie di visualizzazioni e filtri dei dati.

Per saperne di più, consulta la guida al Profiler CPU.

Memory Profiler

Memory Profiler ti aiuta a identificare perdite di memoria e saturazione della memoria che possono causare stuttering, blocchi e persino arresti anomali delle app. Mostra un grafico in tempo reale dell'utilizzo della memoria della tua app, ti consente di acquisire un dump dell'heap, forzare le garbage collection e monitorare le allocazioni di memoria.

Per saperne di più, consulta la guida di Memory Profiler.

Network Profiler

Network Profiler ti consente di monitorare l'attività di rete della tua app, di esaminare il payload di ogni richiesta di rete e di collegarti al codice che ha generato la richiesta di rete.

Per ulteriori informazioni, consulta la guida a Network Profiler.

Profilazione e debug degli APK

Android Studio ora ti consente di profilare ed eseguire il debug di qualsiasi APK senza doverlo creare da un progetto Android Studio, a condizione che l'APK sia creato per attivare il debug e tu abbia accesso ai simboli di debug e ai file sorgente.

Per iniziare, fai clic su Profila o esegui il debug dell'APK dalla schermata di benvenuto di Android Studio. In alternativa, se hai già aperto un progetto, fai clic su File > Profilo o APK di debug dalla barra dei menu. Vengono visualizzati i file APK decompressi, ma il codice non viene decompilato. Pertanto, per aggiungere correttamente i punti di interruzione e visualizzare le analisi dello stack, devi allegare i file sorgente Java e i simboli di debug nativi.

Per saperne di più, consulta Profilare ed eseguire il debug di APK precompilati.

Esplora file dispositivo

Il nuovo Esplora file dispositivo ti consente di esaminare il file system del dispositivo connesso e trasferire file tra il dispositivo e il computer. Questo strumento sostituisce quello del file system disponibile in DDMS.

Per aprirlo, fai clic su Visualizza > Finestre degli strumenti > Esplora file dispositivo.

Per ulteriori informazioni, consulta la guida a Esplora file dispositivo.

Assistenza per le app istantanee

Il nuovo supporto per app istantanee Android ti consente di creare app istantanee nel tuo progetto utilizzando due nuovi tipi di moduli: moduli Instant App e moduli delle funzionalità (questi richiedono l'installazione dell'SDK di sviluppo di Instant Apps).

Android Studio include anche una nuova azione di refactoring modulare per aiutarti ad aggiungere il supporto per le app istantanee in un progetto esistente. Ad esempio, se vuoi rifattorizzare il progetto per inserire alcune classi in un modulo della funzionalità Instant App, seleziona le classi nella finestra Progetto e fai clic su Refactoring > Modularizza. Nella finestra di dialogo visualizzata, seleziona il modulo in cui inserire i corsi e fai clic su Ok.

Quando è tutto pronto per testare la tua app istantanea, puoi creare ed eseguire il modulo dell'app istantanea su un dispositivo connesso specificando l'URL dell'app istantanea all'interno delle opzioni di avvio della configurazione di esecuzione: seleziona Esegui > Modifica configurazioni, seleziona il modulo dell'app istantanea e poi imposta l'URL in Opzioni di avvio.

Per ulteriori informazioni, vedi app istantanee Android.

Moduli Android Things

Nuovi modelli di Android Things nelle procedure guidate Nuovo progetto e Nuovo modulo per aiutarti a iniziare a sviluppare per dispositivi IoT basati su Android.

Per saperne di più, scopri come creare un progetto Android Things.

Procedura guidata per le icone adattive

Image Asset Studio ora supporta i drawable vettoriali e ti consente di creare icone in Avvio applicazioni adattive per Android 8.0, creando contemporaneamente icone tradizionali ("Legacy" icons) per i dispositivi meno recenti.

Per iniziare, fai clic con il tasto destro del mouse sulla cartella res nel tuo progetto, quindi fai clic su Nuovo > Risorsa immagine. Nella finestra Asset Studio, seleziona Icone di avvio (adattive e legacy) come tipo di icona.

Nota: devi impostare compileSdkVersion su 26 o un valore superiore per utilizzare le icone del launcher adattivo.

Per saperne di più, leggi l'articolo Icone adattive.

Supporto per le risorse dei caratteri

Per supportare le nuove risorse dei caratteri in Android 8.0, Android Studio include un selettore di risorse dei caratteri per facilitare il raggruppamento dei caratteri nell'app o la configurazione del progetto per scaricare i caratteri sul dispositivo (se disponibili). L'editor di layout può anche visualizzare l'anteprima dei caratteri nel layout.

Per provare i caratteri scaricabili, assicurati che sul dispositivo o sull'emulatore sia installato Google Play Services v11.2.63 o versioni successive. Per ulteriori informazioni, leggi l'articolo Caratteri scaricabili.

Firebase App Indexing Assistant

L'assistente Firebase è stato aggiornato con un nuovo tutorial per testare l'indicizzazione delle app. Per aprire l'assistente, seleziona Strumenti > Firebase. Quindi, seleziona Indicizzazione delle app > Testa l'indicizzazione delle app.

Il tutorial include nuovi pulsanti per testare l'indicizzazione dei contenuti pubblici e personali:

  • Nel passaggio 2, fai clic su Visualizza l'anteprima dei risultati di ricerca per verificare che i tuoi URL vengano visualizzati nei risultati della Ricerca Google.
  • Nel passaggio 3, fai clic su Controlla errori per verificare che gli oggetti indicizzabili nella tua app siano stati aggiunti all'indice dei contenuti personali.

L'assistente per app link è stato aggiornato con le seguenti nuove funzionalità:

  • Aggiungi test URL per ogni mappatura URL per assicurarti che i filtri per intent gestiscano gli URL reali.

    Puoi anche definire questi test degli URL manualmente utilizzando il tag <tools:validation> descritto di seguito.

  • Crea un file Digital Asset Links con la voce dell'oggetto appropriata per supportare Google Smart Lock e aggiungi il tag asset_statements <meta-data> corrispondente al file manifest.

URL intent-filter validator

Android Studio ora supporta un tag speciale nel file manifest che ti consente di testare gli URL dei filtri per intent. Si tratta degli stessi tag che l'assistente per i link app può creare per te.

Per dichiarare un URL di test per un filtro per intent, aggiungi un elemento <tools:validation> insieme all'elemento <intent-filter> corrispondente. Ad esempio:

      <activity ...>
          <intent-filter>
              ...
          </intent-filter>
          <tools:validation testUrl="https://www.example.com/recipe/1138" />
      </activity>
    
    

Assicurati di includere anche xmlns:tools="http://schemas.android.com/tools" nel tag <manifest>.

Se uno degli URL di test non supera la definizione del filtro per intent, viene visualizzato un errore di lint. Un errore di questo tipo ti consente comunque di creare varianti di debug, ma interromperà le build di rilascio.

Layout Editor

L'Layout Editor è stato aggiornato con una serie di miglioramenti, tra cui:

  • Nuovo layout della barra degli strumenti e nuove icone.
  • Layout aggiornato nell'albero dei componenti.
  • Inserimenti di visualizzazioni tramite trascinamento migliorati.
  • Nuovo riquadro degli errori sotto l'editor, che mostra tutti i problemi con suggerimenti per la correzione (se disponibili).
  • Vari miglioramenti dell'interfaccia utente per la creazione con ConstraintLayout, tra cui i seguenti:
    • Nuovo supporto per creare barriere.
    • Nuovo supporto per la creazione di gruppi: nella barra degli strumenti, seleziona Linee guida > Aggiungi gruppo (richiede ConstraintLayout 1.1.0 beta 2 o versioni successive)
    • Nuova UI per creare catene: seleziona più viste, quindi fai clic con il tasto destro del mouse e seleziona Catena.

Layout Inspector

Layout Inspector include miglioramenti per semplificare il debug dei problemi relativi ai layout delle app, tra cui il raggruppamento delle proprietà in categorie comuni e una nuova funzionalità di ricerca nei riquadri Struttura visualizzazione e Proprietà.

Strumento di analisi APK

Ora puoi utilizzare lo Strumento di analisi APK dalla riga di comando con lo strumento apkanalyzer.

Lo strumento di analisi APK è stato aggiornato anche con i seguenti miglioramenti:

  • Per gli APK creati con ProGuard, puoi caricare i file di mapping ProGuard che aggiungono funzionalità al visualizzatore DEX, tra cui:
    • Nodi in grassetto per indicare che non devono essere rimossi durante la riduzione del codice.
    • Un pulsante per mostrare i nodi rimossi durante il processo di riduzione.
    • Un pulsante che ripristina i nomi originali dei nodi nella visualizzazione ad albero che sono stati offuscati da ProGuard.
  • Il visualizzatore DEX ora mostra l'impatto stimato sulle dimensioni di ogni pacchetto, classe e metodo.
  • Nuove opzioni di filtro nella parte superiore per mostrare e nascondere campi e metodi.
  • Nella visualizzazione ad albero, i nodi che sono riferimenti non definiti nel file DEX vengono visualizzati in corsivo.

Per saperne di più, vedi Analizzare la build con Strumento di analisi APK.

Anteprima del compilatore DEX D8

Android Studio 3.0 include un nuovo compilatore DEX facoltativo chiamato D8. Alla fine sostituirà il compilatore DX, ma puoi attivare l'utilizzo del nuovo compilatore D8 ora.

La compilazione DEX influisce direttamente sul tempo di compilazione, sulle dimensioni del file .dex e sulle prestazioni di runtime dell'app. Inoltre, se confrontato con l'attuale compilatore DX, il nuovo compilatore D8 compila più velocemente e genera file .dex più piccoli, pur mantenendo prestazioni di runtime dell'app uguali o migliori.

Per provarlo, imposta quanto segue nel file gradle.properties del progetto:

android.enableD8=true
    

Per ulteriori informazioni, consulta il post del blog sul compilatore D8.

repository Maven di Google

Android Studio ora utilizza il repository Maven di Google per impostazione predefinita anziché dipendere da Android SDK Manager per ricevere aggiornamenti per la libreria di supporto Android, Google Play Services, Firebase e altre dipendenze. In questo modo è più facile mantenere aggiornate le librerie, soprattutto quando si utilizza un sistema di integrazione continua (CI).

Tutti i nuovi progetti ora includono il repository Maven di Google per impostazione predefinita. Per aggiornare il progetto esistente, aggiungi google() nel blocco repositories del file build.gradle di primo livello:

      allprojects {
          repositories {
              google()
          }
      }
    
    

Scopri di più sul repository Maven di Google qui.

Altre modifiche

  • Il debug nativo con Android Studio non supporta più Windows a 32 bit. Abbiamo scelto di concentrarci su altre piattaforme perché pochissimi sviluppatori utilizzano questa piattaforma. Se utilizzi Windows a 32 bit e prevedi di eseguire il debug del codice nativo, devi continuare a utilizzare Android Studio 2.3.
  • È stato eseguito l'upgrade dell'IDE di base a IntelliJ 2017.1.2, che aggiunge una serie di nuove funzionalità di 2016.3 e 2017.1, come il refactoring del linguaggio Java 8, i suggerimenti per i parametri, l'evidenziazione semantica, i punti di interruzione trascinabili, i risultati istantanei nella ricerca e molto altro ancora.
  • Sono stati aggiunti molti nuovi controlli lint.
  • Consulta anche gli ultimi aggiornamenti dell'emulatore Android.