Secrets Gradle eklentisi

Google, sürüm kontrol sistemi. Bunun yerine, dosyayı yerel bir secrets.properties dosyasında depolamalısınız. sürüm kontrolünden hariç tutulan ancak projenizin kök dizininde yer alan ve Android için Secrets Gradle Eklentisi'ni kullanın. API anahtarını okumanız gerekir.

Android için Secrets Gradle Plugin, API anahtarı da dahil olmak üzere gizli anahtarları sürüm kontrol sistemine kontrol edilmemiş bir özellikler dosyası. 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österilir.

Bir API anahtarına erişmek üzere Android için Secrets Gradle eklentisini kullanmanın tam bir örneği için: Android Studio projesi oluşturma başlıklı makaleyi inceleyin.

Yükleme ve kullanım

Google Haritalar projenize Android için Secrets Gradle Eklentisi'ni yüklemek için:

  1. Android Studio'da üst düzey build.gradle.kts veya build.gradle dosyasını seçin ve aşağıdaki kodu altındaki dependencies öğesine ekleyin buildscript.

    Kotlin

    buildscript {
        dependencies {
            classpath("com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1")
        }
    }

    Modern

    buildscript {
        dependencies {
            classpath "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1"
        }
    }
    
  2. Modül düzeyindeki build.gradle.kts veya build.gradle dosyanızı açın ve plugins öğesine aşağıdaki kodu ekleyin.

    Kotlin

    plugins {
        // ...
        id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin")
    }

    Modern

    plugins {
        // ...
        id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'
    }
  3. Modül düzeyindeki build.gradle.kts veya build.gradle dosyanızda targetSdk ve compileSdk ayarlandığı için 34 yaşa.
  4. Dosyayı kaydedin ve projenizi Gradle ile senkronize edin.
  5. secrets.properties dosyasını en üst düzey dizininizde açın ve şunu ekleyin: aşağıdaki kodu kullanabilirsiniz. YOUR_API_KEY kısmını API anahtarınızla değiştirin. Anahtarınızı bu dosyada depolayın secrets.properties, sürüm kontrolüne kontrol edilmekten hariç tutulduğundan bahsedeceğim.
    MAPS_API_KEY=YOUR_API_KEY
  6. Dosyayı kaydedin.
  7. Üst düzey dizininizde local.defaults.properties dosyasını oluşturun. klasörünü secrets.properties dosyası olarak kaydedin, ardından aşağıdaki kodu ekleyin.

    MAPS_API_KEY=DEFAULT_API_KEY

    Bu dosyanın amacı, Derlemelerin başarısız olmaması için secrets.properties dosyası bulunamadı. Bu durum, uygulamayı, secrets.properties ve sağlamak için henüz yerel olarak bir secrets.properties dosyası oluşturmadınız API anahtarı.

  8. Dosyayı kaydedin.
  9. AndroidManifest.xml dosyanızda şuna gidin: com.google.android.geo.API_KEY ve android:value attribute öğesini güncelleyin. <meta-data> etiketi mevcut değilse bunu <application> etiketi.
    <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="${MAPS_API_KEY}" />

    Not: com.google.android.geo.API_KEY önerilen meta veri adıdır girin. Bu ada sahip bir anahtar, birden fazla kimlik doğrulamasında kullanılabilir Android platformundaki Google Haritalar tabanlı Google Haritalar tabanlı API'ler: Android için Haritalar SDK'sı. Geriye dönük uyumluluk için API ayrıca com.google.android.maps.v2.API_KEY adını destekler. Bu eski name yalnızca Android Maps API v2 ile kimlik doğrulamasına izin verir. Bir uygulama API anahtarı meta veri adlarından yalnızca birini belirtme. Her ikisi de belirtilmişse API bir istisna oluşturur.

  10. Android Studio'da modül düzeyindeki build.gradle.kts veya build.gradle dosyasını açın ve secrets özelliğini düzenleyin. Öğe secrets mülkü mevcut değil, ekleyin.

    propertiesFileName eklentisini şuna ayarlamak için eklentinin özelliklerini düzenleyin: secrets.properties, defaultPropertiesFileName değerini şu şekilde ayarla: local.defaults.properties ve diğer özellikleri ayarlayın.

    Kotlin

    secrets {
        // To add your Maps API key to this project:
        // 1. If the secrets.properties file does not exist, create it in the same folder as the 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"
    
        // Configure which keys should be ignored by the plugin by providing regular expressions.
        // "sdk.dir" is ignored by default.
        ignoreList.add("keyToIgnore") // Ignore the key "keyToIgnore"
        ignoreList.add("sdk.*")       // Ignore all keys matching the regexp "sdk.*"
    }
            

    Modern

    secrets {
        // To add your Maps API key to this project:
        // 1. If the secrets.properties file does not exist, create it in the same folder as the 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"
    
        // Configure which keys should be ignored by the plugin by providing regular expressions.
        // "sdk.dir" is ignored by default.
        ignoreList.add("keyToIgnore") // Ignore the key "keyToIgnore"
        ignoreList.add("sdk.*")       // Ignore all keys matching the regexp "sdk.*"
    }
            

Sırada ne var?