Eseguire la migrazione ad Android Studio

La migrazione dei progetti ad Android Studio richiede l'adattamento a una nuova struttura del progetto, un nuovo sistema di compilazione e una nuova funzionalità IDE.

Se stai eseguendo la migrazione da IntelliJ e il tuo progetto utilizza già Gradle, puoi aprire il progetto esistente da Android Studio. Se utilizzi IntelliJ, ma il tuo progetto non utilizza già Gradle, devi prepararlo manualmente prima di poterlo importare in Android Studio. Per ulteriori informazioni, consulta la sezione Eseguire la migrazione da IntelliJ.

Nozioni di base su Android Studio

Di seguito sono riportate alcune delle differenze principali da tenere presenti quando ti prepari alla migrazione ad Android Studio.

Organizzazione di progetti e moduli

Android Studio è basato sull'IDE IntelliJ IDEA. Per acquisire familiarità con le nozioni di base di IDE, come navigazione, completamento del codice e scorciatoie da tastiera, visita Meet Android Studio.

Android Studio organizza il codice in progetti, che contengono tutto ciò che definisce la tua app per Android, dal codice sorgente dell'app alla creazione di configurazioni e al codice di test. I progetti si aprono in finestre separate di Android Studio. Ogni progetto contiene uno o più moduli che consentono di dividere il progetto in unità discrete di funzionalità. I moduli possono essere creati, testati e sottoposti a debug in modo indipendente.

Per ulteriori informazioni sui progetti e sui moduli di Android Studio, consulta la panoramica dei progetti.

Sistema di build basato su Gradle

Il sistema di compilazione di Android Studio si basa su Gradle e utilizza file di configurazione di compilazione scritti in script Groovy o Kotlin per facilitare l'estensibilità e la personalizzazione.

I progetti basati su Gradle offrono funzionalità significative per lo sviluppo Android, tra cui:

  • Supporto per le librerie binarie (AAR). Non devi più copiare le origini delle librerie nei tuoi progetti. Puoi dichiarare una dipendenza e la libreria verrà scaricata e unita automaticamente nel tuo progetto. Ciò include l'unione automatica di risorse, voci manifest, regole di esclusione ProGuard, regole lint personalizzate e così via in fase di creazione.
  • Supporto per le varianti della build, che ti consentono di creare versioni diverse della tua app (ad esempio una versione senza costi e una versione Pro) dallo stesso progetto.
  • Configurazione e personalizzazione facili. Ad esempio, puoi eseguire il pull dei nomi delle versioni e dei codici di versione dai tag Git come parte della build.
  • Gradle può essere utilizzato dall'IDE, dalla riga di comando e da server di integrazione continua come Jenkins, fornendo sempre la stessa build ovunque.

Per maggiori informazioni sull'utilizzo e sulla configurazione di Gradle, consulta Configurare la build.

Dipendenze

Le dipendenze di libreria in Android Studio utilizzano le dichiarazioni delle dipendenze Gradle e le dipendenze Maven per le librerie binarie e di origine locali note con le coordinate Maven. Per maggiori informazioni, consulta Dichiarare le dipendenze.

Esegui la migrazione da IntelliJ

Se il tuo progetto IntelliJ utilizza il sistema di compilazione Gradle, puoi importare il progetto direttamente in Android Studio. Se il tuo progetto IntelliJ utilizza Maven o un altro sistema di compilazione, devi configurarlo in modo che funzioni con Gradle prima di poter eseguire la migrazione ad Android Studio.

Importa un progetto IntelliJ basato su Gradle

Se utilizzi già Gradle con il tuo progetto IntelliJ, aprilo in Android Studio seguendo questa procedura:

  1. Fai clic su File > Nuovo > Importa progetto.
  2. Seleziona la directory del progetto IntelliJ e fai clic su OK. Il tuo progetto si apre in Android Studio.

Importa un progetto non Gradle IntelliJ

Se il tuo progetto IntelliJ non utilizza già il sistema di compilazione Gradle, hai due opzioni per importare il tuo progetto in Android Studio, descritte nelle sezioni seguenti:

Esegui la migrazione creando un nuovo progetto vuoto

Per eseguire la migrazione del progetto in Android Studio creando un nuovo progetto vuoto e copiando i file di origine nelle nuove directory, procedi come segue:

  1. Apri Android Studio e fai clic su File > Nuovo > Nuovo progetto.
  2. Inserisci un nome per il progetto dell'app e specifica la posizione in cui deve essere creato, poi fai clic su Avanti.
  3. Seleziona i fattori di forma su cui viene eseguita la tua app, poi fai clic su Avanti.
  4. Fai clic su Aggiungi nessuna attività, quindi su Fine.
  5. Nella finestra dello strumento Progetto, fai clic sulla freccia per aprire il menu Visualizza e seleziona la vista Progetto per vedere ed esplorare l'organizzazione del tuo nuovo progetto Android Studio. Per ulteriori informazioni sulla modifica delle visualizzazioni e su come Android Studio struttura i progetti, consulta File di progetto.
  6. Accedi alla località selezionata per il nuovo progetto e sposta il codice, i test delle unità, i test di strumentazione e le risorse dalle directory del progetto precedente alle località corrette nella nuova struttura del progetto.
  7. In Android Studio, fai clic su File > Struttura del progetto per aprire la finestra di dialogo Struttura del progetto. Assicurati che il modulo dell'app sia selezionato nel riquadro a sinistra.
  8. Apporta le modifiche necessarie nella scheda Proprietà del progetto (ad esempio, modificando minSdk o targetSdk).
  9. Fai clic su Dipendenze e aggiungi le librerie da cui dipende il tuo progetto come dipendenze Gradle. Per aggiungere una nuova dipendenza, fai clic su Aggiungi , quindi seleziona il tipo di dipendenza da aggiungere e segui le istruzioni.
  10. Fai clic su OK per salvare le modifiche.
  11. Fai clic su Crea > Crea progetto per testare la creazione del progetto e, se necessario, risolvere eventuali errori in sospeso.

Esegui la migrazione creando un file di build Gradle personalizzato

Per eseguire la migrazione del progetto in Android Studio creando un nuovo file di build Gradle che punti ai file di origine esistenti, procedi come segue:

  1. Prima di iniziare, esegui il backup dei file di progetto in una posizione separata, poiché il processo di migrazione modifica i contenuti del progetto in corso.
  2. Crea un file nella directory del progetto denominato build.gradle, se utilizzi Groovy, oppure build.gradle.kts, se utilizzi lo script Kotlin. Questo file contiene tutte le informazioni necessarie a Gradle per eseguire la tua build.

    Per impostazione predefinita, Android Studio prevede che il progetto sia organizzato come mostrato nella Figura 1.

    Figura 1. La struttura del progetto predefinita per un modulo dell'app Android.

    In settings.gradle, per Groovy o settings.gradle.kts, per lo script Kotlin, puoi impostare i repository utilizzati per trovare i plug-in e le dipendenze rispettivamente nei blocchi pluginManagement e dependencyResolutionManagement:

    Alla moda

      pluginManagement {
          repositories {
              google()
              mavenCentral()
              gradlePluginPortal()
          }
      }
      dependencyResolutionManagement {
          repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
          repositories {
              google()
              mavenCentral()
          }
      }
      rootProject.name = "Test App"
      include ':app'
      

    Kotlin

      pluginManagement {
          repositories {
              google()
              mavenCentral()
              gradlePluginPortal()
          }
      }
      dependencyResolutionManagement {
          repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
          repositories {
              google()
              mavenCentral()
          }
      }
      rootProject.name = "Test App"
      include(":app")
      

    Avviso: il repository JCenter è diventato di sola lettura il 31 marzo 2021. Per maggiori informazioni, consulta Aggiornamento del servizio JCenter.

    Il plug-in Android per Gradle applica alcuni set di origine predefiniti al progetto. Questi set di origini definiscono le directory utilizzate per archiviare vari tipi di file di origine. Gradle utilizza questi set di origini per determinare le posizioni di tipi di file specifici. Se il progetto esistente non è conforme ai valori predefiniti, puoi spostare i file nella posizione desiderata o modificare i set di origini predefiniti in modo che Gradle sappia dove trovarli.

    Per saperne di più sulla configurazione e sulla personalizzazione di un file di build Gradle, vedi Configurare la build.

  3. Quindi, identifica i progetti libreria che stai utilizzando.

    Con Gradle, non devi più aggiungere queste librerie come progetti di codice sorgente. Puoi farvi riferimento nel blocco dependencies{} del tuo file di build. Il sistema di compilazione gestisce quindi queste librerie per te, tra cui il download delle librerie, l'unione delle risorse e l'unione delle voci manifest. L'esempio seguente aggiunge le istruzioni di dichiarazione per alcune librerie AndroidX al blocco dependencies{} di un file di build.

    Alla moda

    ...
    dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
    
        // AndroidX libraries
        implementation 'androidx.core:core-ktx:1.13.1'
        implementation 'androidx.appcompat:appcompat:1.7.0'
        implementation 'androidx.cardview:cardview:1.0.0'
        implementation 'com.google.android.material:material:1.7.0'
        implementation 'androidx.gridlayout:gridlayout:1.0.0'
        implementation 'androidx.leanback:leanback:1.1.0-rc02'
        implementation 'androidx.mediarouter:mediarouter:1.7.0'
        implementation 'androidx.palette:palette-ktx:1.0.0'
        implementation 'androidx.recyclerview:recyclerview:1.3.2'
        implementation 'androidx.annotation:annotation:1.8.0'
    
        // Note: these libraries require that the Google repository has been declared
        // in the pluginManagement section of the top-level build.gradle file.
    }

    Kotlin

    ...
    dependencies {
        implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.jar"))))
    
        // AndroidX libraries
        implementation("androidx.core:core-ktx:1.13.1")
        implementation("androidx.appcompat:appcompat:1.7.0")
        implementation("androidx.cardview:cardview:1.0.0")
        implementation("com.google.android.material:material:1.7.0")
        implementation("androidx.gridlayout:gridlayout:1.0.0")
        implementation("androidx.leanback:leanback:1.1.0-rc02")
        implementation("androidx.mediarouter:mediarouter:1.7.0")
        implementation("androidx.palette:palette-ktx:1.0.0")
        implementation("androidx.recyclerview:recyclerview:1.3.2")
        implementation("androidx.annotation:annotation:1.8.0")
    
        // Note: these libraries require that the Google repository has been declared
        // in the pluginManagement section of the top-level build.gradle.kts file.
    }
    Per informazioni su come determinare le istruzioni di dichiarazione corrette per le librerie, cerca nel repository Google Maven o in Maven Central.
  4. Salva il file build.gradle, quindi chiudi il progetto in IntelliJ. Vai alla directory del progetto ed elimina la directory .idea e tutti i file IML nel progetto.
  5. Avvia Android Studio e fai clic su File > Nuovo > Importa progetto.
  6. Individua la directory del tuo progetto, seleziona il file build.gradle o build.gradle.kts che hai creato, quindi fai clic su OK per importare il progetto.
  7. Fai clic su Crea > Crea progetto per testare il file di build creando il tuo progetto e correggere gli eventuali errori riscontrati.

Passaggi successivi

Una volta eseguita la migrazione del progetto ad Android Studio, scopri di più sulla creazione con Gradle ed sull'esecuzione dell'app in Android Studio leggendo Creare ed eseguire la tua app.

A seconda del progetto e del flusso di lavoro, potrebbe essere opportuno scoprire di più sul controllo della versione, sulla gestione delle dipendenze e sulla configurazione di Android Studio. Per iniziare a utilizzare Android Studio, leggi Scopri Android Studio.

Configura il controllo della versione

Android Studio supporta diversi sistemi di controllo delle versioni, tra cui Git, Mercurial e Subversion. Altri sistemi di controllo della versione possono essere aggiunti tramite i plug-in.

Se la tua app è già sotto il controllo del codice sorgente, potrebbe essere necessario abilitarla in Android Studio. Dal menu VCS, fai clic su Abilita l'integrazione del controllo della versione e seleziona il sistema di controllo della versione appropriato.

Se la tua app non è soggetta al controllo del codice sorgente, puoi configurarla dopo averla importata in Android Studio. Utilizza le opzioni di menu VCS di Android Studio per attivare il supporto VCS per il sistema di controllo della versione desiderato, creare un repository, importare i nuovi file nel controllo della versione ed eseguire altre operazioni di controllo della versione:

  1. Nel menu VCS di Android Studio, fai clic su Abilita l'integrazione del controllo della versione.
  2. Seleziona dal menu un sistema di controllo della versione da associare al progetto principale, quindi fai clic su OK. Il menu VCS ora mostra una serie di opzioni di controllo della versione in base al sistema selezionato.

Nota:per impostare e modificare il controllo della versione, puoi anche utilizzare l'opzione del menu File > Impostazioni > Controllo della versione.

Per ulteriori informazioni sull'utilizzo del controllo della versione, consulta Riferimento sul controllo della versione di IntelliJ.

Firma dell'app

Se in precedenza è stato utilizzato un certificato di debug, potrebbe essere rilevato durante il processo di importazione. In questo caso, Android Studio continua a fare riferimento al certificato. In caso contrario, la configurazione di debug utilizza l'archivio chiavi di debug generato da Android Studio, utilizzando una password nota e una chiave predefinita con una password nota situata in $HOME/.android/debug.keystore. Il tipo di build di debug è impostato per utilizzare automaticamente questa configurazione di debug quando esegui o esegui il debug del progetto da Android Studio.

Analogamente, il processo di importazione potrebbe rilevare un certificato di rilascio esistente. Se non è stato definito alcun certificato di rilascio in precedenza, aggiungi la configurazione della firma di release al file build.gradle o build.gradle.kts oppure utilizza l'opzione di menu Crea > Genera APK firmato per aprire la procedura guidata Generazione dell'APK firmato. Per ulteriori informazioni sulla firma dell'app, vedi Firmare l'app.

Modificare la dimensione massima heap di Android Studio

Per impostazione predefinita, Android Studio ha una dimensione massima dello heap di 1280 MB. Se stai lavorando su un progetto di grandi dimensioni o se il sistema ha molta RAM, puoi migliorare le prestazioni aumentando la dimensione massima dell'heap.

Aggiornamenti software

Android Studio si aggiorna separatamente dal plug-in Gradle, dagli strumenti di creazione e dagli strumenti SDK. Puoi specificare quali versioni desideri utilizzare con Android Studio.

Per impostazione predefinita, Android Studio fornisce aggiornamenti automatici ogni volta che viene rilasciata una nuova versione stabile, ma puoi scegliere di eseguire gli aggiornamenti più spesso e ricevere versioni in anteprima o beta.

Per ulteriori informazioni sull'aggiornamento di Android Studio e sull'utilizzo delle versioni in anteprima e beta, scopri di più sugli aggiornamenti.