Android Studio 3.0 (ottobre 2017)

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

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

3.0.1 (novembre 2017)

Si tratta di un aggiornamento secondario ad 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 migliora principalmente le prestazioni delle build 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 delle build più rapidi grazie alla nuova risoluzione delle dipendenze in ritardo.
  • Risoluzione delle dipendenze con riconoscimento delle varianti solo per i progetti e le varianti che stai creando.
  • Tempi di build incrementali più rapidi quando si applicano semplici modifiche al codice o alle risorse.

Nota: questi miglioramenti hanno richiesto modifiche significative che danneggiano alcuni comportamenti del plug-in, DSL e API. 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 per Android 8.0.
  • Supporto per la creazione di APK separati in base alle risorse di lingua.
  • Supporto per librerie Java 8 e funzionalità in linguaggio Java 8 (senza il compilatore Jack).
  • Supporto per Android Test Support Library 1.0 (Android Test Utility e Android Test Orchestrator).
  • Velocità di build ndk-build e cmake migliorate.
  • Migliore velocità di sincronizzazione Gradle.
  • AAPT2 è ora attivo per impostazione predefinita.
  • L'utilizzo di ndkCompile è ora più limitato. Dovresti invece eseguire la migrazione a CMake o a ndk-build per compilare il codice nativo che vuoi pacchettizzare nel tuo APK. Per scoprire di più, consulta Eseguire la migrazione da ndkcompile.

Per ulteriori informazioni su cosa è cambiato, consulta le note di rilascio del plug-in Android per Gradle.

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

Assistenza Kotlin

Come annunciato al Google I/O 2017, il linguaggio di programmazione Kotlin è ora ufficialmente supportato su Android. Pertanto, in questa release Android Studio include il supporto per il linguaggio Kotlin per lo sviluppo per 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 usufruire di librerie create con Java 8. Jack non è più necessario e devi prima disabilitare Jack per utilizzare il supporto migliorato di Java 8 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 nella versione 1.8 nella finestra di dialogo Struttura del progetto (fai clic su File > Struttura del progetto). Per saperne di più, scopri come utilizzare le funzionalità del linguaggio Java 8.

Profiler di Android

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

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

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

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

Dalla sequenza temporale panoramica di Android Profiler, fai clic sulle sequenze temporali di CPU, MEMORY o RETE per accedere agli strumenti del profiler corrispondenti.

Profiler CPU

Profiler della CPU consente di analizzare l'utilizzo dei thread della CPU da parte dell'app attivando una traccia della CPU di esempio o instrumentata. Dopodiché, puoi risolvere i problemi di prestazioni della CPU utilizzando diversi filtri e visualizzazioni dei dati.

Per ulteriori informazioni, consulta la guida di Profiler CPU.

Profiler di memoria

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

Per ulteriori informazioni, consulta la guida di Profiler di memoria.

Profiler di rete

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

Per ulteriori informazioni, consulta la guida di 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 stato realizzato per attivare il debug e che tu abbia accesso ai simboli di debug e ai file di origine.

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

Per maggiori informazioni, consulta la pagina Profilo e debug di APK predefiniti.

Esplora file del dispositivo

La nuova Esplora file del dispositivo ti consente di esaminare il file system del dispositivo connesso e di trasferire file tra il dispositivo e il computer. Questo sostituisce lo strumento di file system disponibile in DCM.

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

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

Supporto delle app istantanee

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

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 eseguire il refactoring del progetto per inserire alcune classi in un modulo delle funzionalità dell'app istantanea, 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 sei pronto a testare la tua app istantanea, puoi creare ed eseguire il tuo modulo dell'app istantanea su un dispositivo connesso specificando l'URL dell'app istantanea nelle opzioni di avvio della configurazione. Seleziona Esegui > Modifica configurazioni, seleziona il modulo dell'app istantanea e imposta l'URL in Opzioni di avvio.

Per ulteriori informazioni, consulta la sezione 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 con piattaforma Android.

Per ulteriori informazioni, scopri come creare un progetto Android Things.

Procedura guidata Icone adattive

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

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

Nota: devi impostare compileSdkVersion su 26 o un valore superiore per usare le icone di Avvio applicazioni adattive.

Per maggiori informazioni, scopri di più sulle icone adattive.

Supporto per le risorse per i caratteri

Per supportare le nuove risorse per i caratteri in Android 8.0, Android Studio include un selettore di risorse per i caratteri che consente di raggruppare i caratteri nell'app o di configurare il progetto in modo da 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 tuo dispositivo o nell'emulatore sia in esecuzione Google Play Services 11.2.63 o versioni successive. Per maggiori informazioni, leggi l'articolo sui caratteri scaricabili.

Assistente di indicizzazione delle app Firebase

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 gli URL vengano visualizzati nei risultati della Ricerca Google.
  • Nel passaggio 3, fai clic su Verifica la presenza di errori per verificare che gli oggetti indicizzabili nell'app siano stati aggiunti all'indice dei contenuti personali.

L'Assistente Link alle app è stato aggiornato con le seguenti nuove funzionalità:

  • Aggiungi test degli URL per ogni mapping di 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.

Strumento di convalida del filtro per intent dell'URL

Android Studio ora supporta un tag speciale nel file manifest che ti consente di verificare gli URL del filtro per intent. Si tratta degli stessi tag che l'Assistente 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. Ecco alcuni esempi:

      <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 qualsiasi degli URL di test non supera la definizione del filtro per intent, viene visualizzato un errore lint. Un errore di questo tipo ti consente comunque di creare varianti di debug, ma comprometterà le build della release.

Editor layout

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

  • Nuovo layout della barra degli strumenti e nuove icone.
  • Layout aggiornato nell'albero dei componenti.
  • Migliorati gli inserti con visualizzazione a trascinamento.
  • Nuovo riquadro degli errori sotto l'editor che mostra tutti i problemi con suggerimenti da risolvere (se disponibili).
  • Diversi miglioramenti all'interfaccia utente per la creazione con ConstraintLayout, tra cui:
    • 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, poi fai clic con il tasto destro del mouse e seleziona Catena.

Controllo layout

Controllo layout include miglioramenti che semplificano il debug dei problemi relativi ai layout delle app, tra cui il raggruppamento delle proprietà in categorie comuni e una nuova funzionalità di ricerca sia nel riquadro Visualizza struttura che nei riquadri Proprietà.

Strumento di analisi APK

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

Anche lo strumento di analisi APK è stato aggiornato con i seguenti miglioramenti:

  • Per gli APK creati con ProGuard, puoi caricare file di mapping ProGuard che aggiungono funzionalità al visualizzatore DEX, tra cui:
    • Nodi in grassetto per indicare che i nodi non devono essere rimossi durante la riduzione del codice.
    • Un pulsante per mostrare i nodi rimossi durante il processo di riduzione.
    • 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 in alto per mostrare e nascondere campi e metodi.
  • Nella visualizzazione ad albero, i nodi che sono riferimenti non definiti nel file DEX sono riportati in corsivo.

Per ulteriori informazioni, consulta Analizzare la build con lo strumento di analisi APK.

Anteprima del compilatore DEX D8

Android Studio 3.0 include un nuovo compilatore DEX opzionale chiamato D8. Alla fine sostituirà il compilatore DX, ma puoi scegliere di utilizzarlo subito.

La compilazione DEX influisce direttamente sulla durata della build dell'app, sulle dimensioni del file .dex e sulle prestazioni di runtime. E quando confronti il nuovo compilatore D8 con l'attuale compilatore DX, D8 effettua la compilazione più velocemente e genera file .dex più piccoli, pur mantenendo prestazioni di runtime dell'app uguali o migliori.

Per fare una prova, imposta quanto segue nel file gradle.properties del progetto:

android.enableD8=true
    

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

Repository Maven di Google

Android Studio ora utilizza il Repository Maven di Google per impostazione predefinita anziché a seconda di Android SDK Manager per ricevere aggiornamenti relativi a Android Support Library, 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).

Per impostazione predefinita, tutti i nuovi progetti ora includono il Repository Maven di Google. 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é sono pochissimi gli sviluppatori che la utilizzano. Se usi Windows a 32 bit e prevedi di eseguire il debug del codice nativo, continua a utilizzare Android Studio 2.3.
  • È stato aggiornato l'IDE di base a IntelliJ 2017.1.2, che aggiunge una serie di nuove funzionalità da 2016.3 e 2017.1, come il refactoring del linguaggio Java 8, suggerimenti dei parametri, evidenziazione semantica, punti di interruzione trascinabili, risultati istantanei nella ricerca e molto altro.
  • Sono stati aggiunti molti nuovi controlli lint.
  • Scopri anche gli ultimi aggiornamenti di Android Emulator.