Google consiglia vivamente di non archiviare una chiave API nel sistema di controllo delle versioni. Archiviala invece in un file
secrets.properties locale, che si trova nella directory principale del tuo
progetto, ma è escluso dal controllo della versione, e poi utilizza il
plug-in Secrets Gradle per Android
per leggere la chiave API.
Il plug-in Secrets Gradle per Android legge i secret, inclusa la chiave API, da
un file di proprietà non archiviato in un sistema di controllo delle versioni. Il plug-in espone quindi queste proprietà come variabili nella classe BuildConfig generata da Gradle e nel file manifest Android.
Per un esempio completo di utilizzo del plug-in Secrets Gradle per Android per accedere a una chiave API, vedi Configurare un progetto Android Studio.
Installazione e utilizzo
Per installare il plug-in Secrets Gradle per Android e archiviare la chiave API:
-
In Android Studio, apri il file
build.gradlea livello di radice e aggiungi il seguente codice all'elementodependenciesinbuildscript.Groovy
buildscript { dependencies { // ... classpath "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1" } }
Kotlin
buildscript { dependencies { // ... classpath("com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1") } }
-
Apri il file
build.gradlea livello di app e aggiungi il seguente codice all'elementoplugins.Groovy
plugins { id 'com.android.application' // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
Kotlin
plugins { id("com.android.application") // ... id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") }
- Se utilizzi Android Studio, sincronizza il progetto con Gradle.
-
Apri il file
local.propertiesnella directory a livello di progetto, quindi aggiungi il seguente codice. SostituisciYOUR_API_KEYcon la tua chiave API.MAPS_API_KEY=YOUR_API_KEY
-
Nel file
AndroidManifest.xml, vai acom.google.android.geo.API_KEYe aggiorna l'attributoandroid:valuecome segue:<meta-data android:name="com.google.android.geo.API_KEY" android:value="${MAPS_API_KEY}" />Nota:
com.google.android.geo.API_KEYè il nome dei metadati consigliato per la chiave API. Una chiave con questo nome può essere utilizzata per l'autenticazione a più API basate su Google Maps sulla piattaforma Android, incluso Maps SDK for Android. Per la compatibilità con le versioni precedenti, l'API supporta anche il nomecom.google.android.maps.v2.API_KEY. Questo nome legacy consente l'autenticazione solo all'API di Google Maps v2. Un'applicazione può specificare solo uno dei nomi dei metadati della chiave API. Se vengono specificati entrambi, l'API genera un'eccezione.
Passaggi successivi
- Consulta la pagina del progetto GitHub del plug-in Gradle Secrets per Android.
- Consulta Configurare un progetto Android Studio per un esempio completo di utilizzo del plug-in.