Bu sayfada, Hızlı Başlangıç bölümünde ayrıntılı olarak açıklanan Google Haritalar şablonunu kullanmadan Android için Haritalar SDK'sını kullanmak üzere bir Android Studio projesinin nasıl yapılandırılacağı açıklanmaktadır.
Google Haritalar şablonu, yeni bir Android Studio projesini otomatik olarak yapılandırır ve projeye temel bir harita ekler. Ancak farklı bir Android Studio şablonu kullanan bir Android projesine de harita ekleyebilirsiniz. Bunu yapmak için projenizi manuel olarak yapılandırmanız ve ardından haritayı eklemeniz gerekir.
1. adım: Android Studio'yu kurun
Bu belgede, Android Studio Hedgehog ve Android Gradle eklentisi 8.2 sürümünün kullanıldığı bir geliştirme ortamı açıklanmaktadır.
2. adım: SDK'yı ayarlama
Android için Haritalar SDK'sı kitaplığına Google'ın Maven deposundan erişebilirsiniz. SDK'yı uygulamanıza eklemek için aşağıdakileri yapın:
- En üst düzeydeki
settings.gradle.ktsdosyanızda,pluginManagementbloğunun altına Gradle eklenti portalını, Google Maven deposunu ve Maven merkezi deposunu ekleyin.pluginManagementbloğu, komut dosyasındaki diğer ifadelerden önce görünmelidir.pluginManagement { repositories { gradlePluginPortal() google() mavenCentral() } }
- En üst düzeydeki
settings.gradle.ktsdosyanızda,dependencyResolutionManagementbloğunun altına Google'ın Maven deposunu ve Maven merkezi deposunu ekleyin:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
- Modül düzeyindeki
build.gradle.ktsveyabuild.gradledosyanıza Android için Haritalar SDK'sının Google Play Hizmetleri bağımlılığını ekleyin.Kotlin
dependencies { // Maps SDK for Android implementation(libs.play.services.maps) }
Modern
dependencies { // Maps SDK for Android implementation "com.google.android.gms:play-services-maps:19.0.0" }
- Modül düzeyindeki
build.gradle.ktsveyabuild.gradledosyanızda,compileSdkveminSdkdeğerlerini aşağıdaki gibi ayarlayın:Kotlin
android { compileSdk = 34 defaultConfig { minSdk = 21 // ... } }
Modern
android { compileSdk 34 defaultConfig { minSdk 21 // ... } }
- Modül düzeyindeki
buildFeaturesveyabuild.gradledosyanızınbuildFeaturesbölümüne, bu prosedürde daha sonra tanımlanan meta veri değerlerine erişmek için kullanabileceğinizBuildConfigsınıfını ekleyin:build.gradle.ktsKotlin
android { // ... buildFeatures { buildConfig = true // ... } }
Modern
android { // ... buildFeatures { buildConfig true // ... } }
libs.versions.tomldosyanıza aşağıdakileri ekleyin:[versions] play-services-maps = "19.2.0" [libraries] play-services-maps = { module = "com.google.android.gms:play-services-maps", version.ref = "play-services-maps" }
3. adım: API anahtarınızı projeye ekleyin
Bu bölümde, API anahtarınızın uygulamanız tarafından güvenli bir şekilde referans alınabilmesi için nasıl saklanacağı açıklanmaktadır. API anahtarınızı sürüm denetim sisteminize işlememeniz gerekir. Bu nedenle, anahtarınızı projenizin kök dizininde bulunan secrets.properties dosyasına kaydetmenizi öneririz. secrets.properties dosyası hakkında daha fazla bilgi için Gradle özellik dosyaları konusuna bakın.
Bu görevi kolaylaştırmak için Android İçin Secrets Gradle Plugin'i kullanmanızı öneririz.
Android için Secrets Gradle Plugin'i yüklemek ve API anahtarınızı depolamak için:
-
Android Studio'da, kök düzeyindeki
build.gradledosyanızı açın vebuildscriptaltındakidependenciesöğesine aşağıdaki kodu ekleyin.Modern
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") } }
-
Uygulama düzeyindeki
build.gradledosyanızı açın ve aşağıdaki kodupluginsöğesine ekleyin.Modern
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") }
- Android Studio kullanıyorsanız projenizi Gradle ile senkronize edin.
-
Proje düzeyindeki dizininizde
local.propertiesdosyasını açın ve aşağıdaki kodu ekleyin.YOUR_API_KEYkısmını API anahtarınızla değiştirin.MAPS_API_KEY=YOUR_API_KEY
-
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: API anahtarı için önerilen meta veri adı
com.google.android.geo.API_KEY'dir. Bu ada sahip bir anahtar, Android platformundaki Android için Haritalar SDK'sı da dahil olmak üzere birden fazla Google Haritalar tabanlı API'de kimlik doğrulaması yapmak 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ğrulamasına izin verir. Bir uygulama yalnızca API anahtarı meta veri adlarından birini belirtebilir. Her ikisi de belirtilirse API bir istisna oluşturur.
4. adım: Uygulama manifestini güncelleyin
Bu bölümde, AndroidManifest.xml dosyanıza eklenecek ayarlar açıklanmaktadır.
Google Play Hizmetleri sürüm numarası
application öğesine aşağıdaki beyanı ekleyin. Bu, uygulamanın derlendiği Google Play Hizmetleri sürümünü yerleştirir.
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
Konum izni
Uygulamanızın kullanıcının konumuna erişmesi gerekiyorsa AndroidManifest.xml dosyanızda konum izni istemeniz gerekir. Seçenekler arasında tam cihaz konumunu sağlayan ACCESS_FINE_LOCATION ve daha az hassas olan ACCESS_COARSE_LOCATION yer alır. Ayrıntılar için konum verileri kılavuzuna bakın.
ACCESS_FINE_LOCATION iznini istemek için bu kodu manifest öğesine ekleyin:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
Harici depolama izni
Google Play Hizmetleri SDK'sının 8.3 veya sonraki sürümlerini hedefliyorsanız
WRITE_EXTERNAL_STORAGE iznine ihtiyacınız yoktur. Google Play Hizmetleri SDK'sının önceki sürümlerini hedefliyorsanız manifest öğesinde WRITE_EXTERNAL_STORAGE iznini istemeniz gerekir.
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Apache HTTP Legacy kitaplığı
com.google.android.gms:play-services-maps:16.0.0 veya önceki bir sürümü kullanıyorsanız ve uygulamanız API düzeyi 28'i (Android 9.0) ya da sonraki bir sürümü hedefliyorsa AndroidManifest.xml öğesinin <application> öğesine aşağıdaki bildirimi eklemeniz gerekir. Aksi takdirde bu beyanı atlayın.
<uses-library
android:name="org.apache.http.legacy"
android:required="false" />
5. adım: Android cihaz kurma
Android için Haritalar SDK'sını kullanan bir uygulamayı çalıştırmak için uygulamayı Android 5.0 veya sonraki sürümlere dayalı ve Google API'lerini içeren bir Android cihaza ya da Android emülatörüne dağıtmanız gerekir.
- Android cihaz kullanmak için Uygulamaları donanım cihazında çalıştırma başlıklı makaledeki talimatları uygulayın.
- Android emülatörü kullanmak için sanal cihaz oluşturabilir ve Android Studio ile birlikte gelen Android Virtual Device (AVD) Manager'ı kullanarak emülatörü yükleyebilirsiniz.
6. adım: İsteğe bağlı olarak Play Hizmetleri desteğini kontrol edin
Android için Haritalar SDK'sı, uygulamanızı dağıttığınız cihazda Google Play Hizmetleri'nin yüklü olmasını gerektirir. Google, uygulamanızdan çağırarak kontrol edebileceğiniz bir yöntem sunar. Daha fazla bilgi için Google Play Hizmetleri'nin yüklü olup olmadığını kontrol etme başlıklı makaleyi inceleyin.
Sonraki adımlar
Projeniz yapılandırıldıktan sonra harita ekleyebilirsiniz.