Configurare un progetto Android Studio

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

In questa pagina viene descritto come configurare un progetto Android Studio in modo che utilizzi l'SDK Maps per Android senza utilizzare il modello di Google Maps descritto nella Guida rapida.

Il modello di Google Maps si configura automaticamente e aggiunge una mappa di base a un nuovo progetto di Android Studio. Tuttavia, puoi anche aggiungere una mappa a un progetto Android che utilizza un modello di Android Studio diverso. Per farlo, devi configurare manualmente il progetto e poi aggiungere la mappa.

Passaggio 1: configura Android Studio

  1. È necessario Android Studio Arctic Fox o versioni successive. Se non l'hai ancora fatto, scaricala e installala.
  2. Assicurati di utilizzare il plug-in Android per Gradle versione 7.0 o successive in Android Studio.

Passaggio 2: Configura l'SDK

L'SDK Maps per Android è disponibile tramite il repository Maven di Google. Per aggiungere l'SDK alla tua app, procedi nel seguente modo:

  1. Nel file settings.gradle di primo livello, includi il portale del plug-in Gradle, il repository Google Maven e il repository centrale Maven nel blocco pluginManagement. Il blocco pluginManagement deve apparire prima di qualsiasi altra istruzione nello script.
    pluginManagement {
        repositories {
            gradlePluginPortal()
            google()
            mavenCentral()
        }
    } 
  2. Nel file di primo livello settings.gradle, includi il repository Maven di Google e il repository centrale Maven nel blocco dependencyResolutionManagement:
    dependencyResolutionManagement {
        repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
        repositories {
            google()
            mavenCentral()
        }
    } 
  3. Nel file build.gradle a livello di modulo, aggiungi la dipendenza Google Play Services per l'SDK Maps per Android.
    dependencies {
        implementation 'com.google.android.gms:play-services-maps:18.1.0'
        // ...
    } 
  4. Nel file build.gradle a livello di modulo, imposta compileSdk e minSdk sui seguenti valori:
    android {
        compileSdk 31
    
        defaultConfig {
            minSdk 19
            // ...
        }

Passaggio 3: aggiungi la chiave API al progetto

Questa sezione descrive come archiviare la chiave API in modo che possa essere fatto riferimento in modo sicuro dall'app. Non dovresti controllare la chiave API nel sistema di controllo della versione, quindi ti consigliamo di archiviarla nel file local.properties, che si trova nella directory principale del progetto. Per ulteriori informazioni sul file local.properties, consulta File delle proprietà Gradle.

Per semplificare questa attività, ti consigliamo di utilizzare il plug-in Secrets Gradle per Android. Per installare il plug-in e archiviare la chiave API:

  1. In Android Studio, apri il file build.gradle a livello di progetto e aggiungi il codice seguente all'elemento dependencies in buildscript.
    plugins {
        // ...
        id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' version '2.0.1' apply false
    }
  2. Apri il file build.gradle a livello di modulo e aggiungi il codice seguente all'elemento plugins.
    id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'
        
  3. Salva il file e sincronizza il progetto con Gradle.
  4. Apri local.properties nella directory a livello di progetto e aggiungi il codice seguente. Sostituisci YOUR_API_KEY con la chiave API.
    MAPS_API_KEY=YOUR_API_KEY
        
  5. Salva il file.
  6. Nel file AndroidManifest.xml, vai a com.google.android.geo.API_KEY e aggiorna android:value attribute come segue:
    <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="${MAPS_API_KEY}" />
        

Nota: come mostrato sopra, com.google.android.geo.API_KEY è il nome consigliato dei metadati per la chiave API. Una chiave con questo nome può essere utilizzata per eseguire l'autenticazione su più API basate su Google Maps sulla piattaforma Android, tra cui l'SDK di Maps per Android. Per la compatibilità con le versioni precedenti, l'API supporta anche il nome com.google.android.maps.v2.API_KEY. Questo nome legacy consente l'autenticazione solo nella versione 2 dell'API Android Maps. Un'applicazione può specificare solo uno dei nomi dei metadati della chiave API. Se entrambi sono specificati, l'API genera un'eccezione.

Passaggio 4: aggiorna il file manifest dell'app

Questa sezione descrive le impostazioni da aggiungere al file AndroidManifest.xml.

Numero di versione di Google Play Services

Aggiungi la seguente dichiarazione all'interno dell'elemento application. Viene incorporata la versione di Google Play Services con cui è stata compilata l'app.

<meta-data
    android:name="com.google.android.gms.version"
    android:value="@integer/google_play_services_version" />

Autorizzazione di accesso alla posizione

Se la tua app deve accedere alla posizione dell'utente, devi richiedere l'autorizzazione di accesso alla posizione nel file AndroidManifest.xml. Le opzioni sono ACCESS_FINE_LOCATION, che fornisce la posizione esatta dell'utente, e ACCESS_COARSE_LOCATION, che è meno precisa. Per maggiori dettagli, consulta la guida relativa ai dati sulla posizione.

Per richiedere l'autorizzazione ACCESS_FINE_LOCATION, aggiungi questo codice all'elemento manifest:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

Autorizzazione archiviazione esterna

Se hai scelto come target la versione 8.3 o successive dell'SDK Google Play Services, non hai bisogno dell'autorizzazione WRITE_EXTERNAL_STORAGE. Se scegli come target le versioni precedenti dell'SDK Google Play Services, devi richiedere l'autorizzazione WRITE_EXTERNAL_STORAGE nell'elemento manifest.

<uses-permission
        android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Libreria Apache HTTP Legacy

Se utilizzi com.google.android.gms:play-services-maps:16.0.0 o una versione precedente e l'app ha come target il livello API 28 (Android 9.0) o versioni successive, devi includere la seguente dichiarazione all'interno dell'elemento <application> di AndroidManifest.xml. Altrimenti, ignora questa dichiarazione.

<uses-library
    android:name="org.apache.http.legacy"
    android:required="false" />

Passaggio 5: configura un dispositivo Android

Per eseguire un'app che utilizza l'SDK Maps per Android, devi eseguirne il deployment su un dispositivo Android o un emulatore Android basato su Android 4.0 o versioni successive e con le API di Google.

  • Per utilizzare un dispositivo Android, segui le istruzioni su come eseguire app su un dispositivo hardware.
  • Per utilizzare un emulatore Android, puoi creare un dispositivo virtuale e installarlo utilizzando Android Virtual Device (AVD) Manager fornito con Android Studio.

Passaggi successivi

Dopo aver configurato il progetto, puoi aggiungere una mappa.