Google, sürüm denetim sisteminize API anahtarı eklememenizi önemle tavsiye eder. Bunun yerine, anahtarı projenizin kök dizininde bulunan ancak sürüm denetiminin dışında tutulan yerel bir secrets.properties dosyasına kaydedin ve API anahtarını okumak için Android için Secrets Gradle eklentisini kullanın.
Android için Secrets Gradle Plugin, API anahtarı da dahil olmak üzere gizli anahtarları, sürüm denetim sistemine dahil edilmeyen bir özellikler dosyasından okur. Eklenti daha sonra bu özellikleri, Gradle tarafından oluşturulan BuildConfig sınıfında ve Android manifest dosyasında değişken olarak gösterir.
API anahtarına erişmek için Android İçin Secrets Gradle Plugin'in kullanımına dair eksiksiz bir örnek için Android Studio projesi oluşturma başlıklı makaleyi inceleyin.
Kurulum ve kullanım
Android için Secrets Gradle Eklentisi'ni yüklemek ve API anahtarınızı depolamak için:
-
Android Studio'da üst düzey
build.gradle.ktsveyabuild.gradledosyanızı açın ve aşağıdaki kodupluginsbloğuna ekleyin.Kotlin
plugins { // ... id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") version "2.0.1" apply false }
Modern
plugins { // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' version '2.0.1' apply false }
-
Modül düzeyindeki
build.gradle.ktsveyabuild.gradledosyanızı açın ve aşağıdaki kodupluginsöğesine ekleyin.Kotlin
plugins { id("com.android.application") // ... id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") }
Modern
plugins { id 'com.android.application' // ... id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin' }
- Android Studio kullanıyorsanız projenizi Gradle ile senkronize edin.
-
En üst düzey dizininizde
secrets.propertiesdosyasını açın ve aşağıdaki kodu ekleyin.YOUR_API_KEYkısmını API anahtarınızla değiştirin. API anahtarınızı sürüm denetimine eklememek içinsecrets.propertiesdosyanıza.gitignoreeklediğinizden (veya sürüm denetim sisteminizden hariç tuttuğunuzdan) emin olun.MAPS_API_KEY=YOUR_API_KEY
-
En üst düzey dizininizde,
secrets.propertiesdosyasıyla aynı klasördelocal.defaults.propertiesdosyasını oluşturun ve aşağıdaki kodu ekleyin.MAPS_API_KEY=DEFAULT_API_KEY
Bu dosyanın amacı,
secrets.propertiesdosyası bulunamazsa derlemelerin başarısız olmaması için API anahtarına yedek bir konum sağlamaktır. Bu durum, uygulamayısecrets.propertiesdosyasını atlayan bir sürüm denetim sisteminden kopyaladıysanız ve API anahtarınızı sağlamak için yerel olarak birsecrets.propertiesdosyası oluşturmadıysanız ortaya çıkabilir. -
AndroidManifest.xmldosyanızdacom.google.android.geo.API_KEYbölümüne gidin veandroid:valueözelliğini aşağıdaki gibi güncelleyin:<meta-data android:name="com.google.android.geo.API_KEY" android:value="${MAPS_API_KEY}" />Not:
com.google.android.geo.API_KEY, API anahtarı için önerilen meta veri adıdır. Bu ada sahip bir anahtar, Android platformunda Android için Haritalar SDK'sı da dahil olmak üzere Google Haritalar tabanlı birden fazla API'nin kimliğini doğrulamak için kullanılabilir. API, geriye dönük uyumluluk içincom.google.android.maps.v2.API_KEYadını da destekler. Bu eski ad, yalnızca Android Maps API v2'de kimlik doğrulamaya izin verir. Bir uygulama, API anahtarı meta veri adlarından yalnızca birini belirtebilir. Her ikisi de belirtilirse API bir istisna oluşturur. -
Android Studio'da modül düzeyindeki
build.gradle.ktsveyabuild.gradledosyanızı açın vesecretsözelliğini düzenleyin.secretsözelliği yoksa ekleyin.Eklentinin özelliklerini düzenleyerek
propertiesFileNamedeğerini"secrets.properties",defaultPropertiesFileNamedeğerini"local.defaults.properties"olarak ayarlayın ve diğer özellikleri belirleyin.Kotlin
secrets { // To add your Maps API key to this project: // 1. If the secrets.properties file does not exist, create it in the root directory (the same folder as the root local.properties file). // 2. Add this line, where YOUR_API_KEY is your API key: // MAPS_API_KEY=YOUR_API_KEY propertiesFileName = "secrets.properties" // A properties file containing default secret values. This file can be // checked in version control. defaultPropertiesFileName = "local.defaults.properties" }
Modern
secrets { // To add your Maps API key to this project: // 1. If the secrets.properties file does not exist, create it in the root directory (the same folder as the root local.properties file). // 2. Add this line, where YOUR_API_KEY is your API key: // MAPS_API_KEY=YOUR_API_KEY propertiesFileName = "secrets.properties" // A properties file containing default secret values. This file can be // checked in version control. defaultPropertiesFileName = "local.defaults.properties" }
Sırada ne var?
- Android İçin Secrets Gradle Plugin GitHub proje sayfasına bakın.
- Eklentinin kullanımına dair eksiksiz bir örnek için Android Studio projesi oluşturma başlıklı makaleyi inceleyin.