Android için Haritalar SDK'sı Hızlı Başlangıç Kılavuzu

Android Studio için Google Haritalar Görünümleri şablonunu kullanarak harita görüntüleyen bir Android uygulaması oluşturun. Oluşturmak istediğiniz mevcut bir Android Studio projeniz varsa Android Studio projesi oluşturma başlıklı makaleyi inceleyin.

Bu hızlı başlangıç kılavuzu, Kotlin veya Java ile temel Android geliştirme hakkında bilgi sahibi olan geliştiriciler için hazırlanmıştır.

Geliştirme ortamı hakkında

Bu hızlı başlangıç kılavuzu, Android Studio Hedgehog ve Android Gradle eklentisi 8.2 sürümü kullanılarak geliştirilmiştir.

Android cihaz kurma

Android için Haritalar SDK'sını kullanan bir uygulamayı çalıştırmak istiyorsanız uygulamayı Android 5.0 veya sonraki sürümleri temel alan 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ünü kullanmak için Android Studio ile birlikte gelen Android Virtual Device (AVD) Manager'ı kullanarak sanal cihaz oluşturabilir ve emülatörü yükleyebilirsiniz.

Android Studio'da Google Haritalar projesi oluşturma

Android Studio'da Google Haritalar projesi oluşturma işlemi, Android Studio'nun Flamingo ve sonraki sürümlerinde değiştirildi.

  1. Android Studio'yu açın ve Android Studio'ya Hoş Geldiniz penceresinde Yeni Proje'yi tıklayın.

  2. Yeni Proje penceresindeki Telefon ve Tablet kategorisinde Etkinlik Yok'u seçip İleri'yi tıklayın.

  3. Yeni Proje formunu doldurun:

    • Dil'i Java veya Kotlin olarak ayarlayın. Her iki dil de Android için Haritalar SDK'sı tarafından tam olarak desteklenir. Kotlin hakkında daha fazla bilgi edinmek için Kotlin ile Android uygulamaları geliştirme başlıklı makaleyi inceleyin.

    • Minimum SDK'yı test cihazınızla uyumlu bir SDK sürümüne ayarlayın. Android için Haritalar SDK'sı 19.0.x sürümü tarafından gereken minimum sürümden (Android API düzeyi 21 ("Lollipop"; Android 5.0) veya üstü) daha yeni bir sürüm seçmeniz gerekir. SDK sürümü şartlarıyla ilgili en son bilgiler için Sürüm Notları'na bakın.

    • Derleme yapılandırma dili'ni Kotlin DSL veya Groovy DSL olarak ayarlayın. Aşağıdaki prosedürlerde her iki derleme yapılandırması dili için de snippet'ler gösterilmektedir.

  4. Son'u tıklayın.

    Android Studio, Gradle'i başlatır ve projeyi derler. Bu işlem zaman alabilir.

  5. Google Haritalar Görüntüleme Etkinliği'ni ekleyin:

    1. Projenizdeki app klasörünü sağ tıklayın.
    2. Yeni > Google > Google Haritalar Görüntüleme Etkinliği'ni seçin.

      Haritalar etkinliği ekleyin.

    3. Yeni Android Etkinliği iletişim kutusunda Başlatıcı Etkinliği onay kutusunu işaretleyin.

    4. Son'u seçin.

      Daha fazla bilgi için Şablondan kod ekleme başlıklı makaleyi inceleyin.

  6. Derleme tamamlandığında Android Studio, AndroidManifest.xml ve MapsActivity dosyalarını açar. Etkinliğinizin adı farklı olabilir ancak bu, kurulum sırasında yapılandırdığınız addır.

Google Cloud projenizi ayarlama

Aşağıdaki sekmeleri tıklayarak gerekli Cloud Console kurulum adımlarını tamamlayın:

1. Adım

Konsol

  1. Yeni bir Cloud projesi oluşturmaya başlamak için Google Cloud Console'daki proje seçici sayfasında Proje Oluştur'u tıklayın.

    Proje seçici sayfasına gidin

  2. Cloud projenizde faturalandırmanın etkinleştirildiğinden emin olun. Projeniz için faturalandırmanın etkinleştirildiğinden emin olun.

    Google Cloud, 0,00 ABD doları ücretli deneme sürümü sunar. Deneme süresi, 90 gün veya hesapta 300 ABD doları tutarında ödeme yapıldıktan sonra (hangisi önce gerçekleşirse) sona erer. Dilediğiniz zaman iptal edebilirsiniz. Google Haritalar Platformu'nda aylık 200 ABD doları tutarındaki yinelenen bir kredi bulunur. Daha fazla bilgi için Faturalandırma hesabı kredileri ve Faturalandırma başlıklı makaleleri inceleyin.

Google Cloud SDK

gcloud projects create "PROJECT"

Google Cloud SDK, Cloud SDK yükleme ve aşağıdaki komutlar hakkında daha fazla bilgi edinin:

2. Adım

Google Haritalar Platformu'nu kullanmak için projenizle kullanmayı planladığınız API'leri veya SDK'ları etkinleştirmeniz gerekir.

Konsol

Android için Haritalar SDK'sını etkinleştirme

Google Cloud SDK

gcloud services enable \
    --project "PROJECT" \
    "maps-android-backend.googleapis.com"

Google Cloud SDK, Cloud SDK yükleme ve aşağıdaki komutlar hakkında daha fazla bilgi edinin:

3. Adım

Bu adımda yalnızca API anahtarı oluşturma işlemi gerçekleştirilir. API anahtarınızı üretimde kullanıyorsanız API anahtarınızı kısıtlamanızı önemle tavsiye ederiz. Daha fazla bilgi için ürüne özel API Anahtarları Kullanma sayfasına gidin.

API anahtarı, kullanım ve faturalandırma amacıyla projenizle ilişkili isteklerin kimliğini doğrulayan benzersiz bir tanımlayıcıdır. Projenizle ilişkilendirilmiş en az bir API anahtarınız olmalıdır.

API anahtarı oluşturmak için:

Konsol

  1. Google Haritalar Platformu > Kimlik Bilgileri sayfasına gidin.

    Kimlik Bilgileri sayfasına gidin

  2. Kimlik bilgileri sayfasında Kimlik bilgileri oluştur > API anahtarı'nı tıklayın.
    Oluşturulan API anahtarı iletişim kutusunda yeni oluşturulan API anahtarınız gösterilir.
  3. Kapat'ı tıklayın.
    Yeni API anahtarı, Kimlik bilgileri sayfasındaki API anahtarları bölümünde listelenir.
    (API anahtarını üretimde kullanmadan önce kısıtlamayı unutmayın.)

Google Cloud SDK

gcloud alpha services api-keys create \
    --project "PROJECT" \
    --display-name "DISPLAY_NAME"

Google Cloud SDK, Cloud SDK yükleme ve aşağıdaki komutlar hakkında daha fazla bilgi edinin:

API anahtarını uygulamanıza ekleme

Bu bölümde, API anahtarınızı uygulamanız tarafından güvenli bir şekilde referans verilebilmesi için nasıl saklamanız gerektiği açıklanmaktadır. API anahtarınızı sürüm kontrol sisteminize eklememeniz gerektiğinden, anahtarı projenizin kök dizininde bulunan secrets.properties dosyasında saklamanızı ö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 için Secrets Gradle Plugin'i kullanmanızı öneririz.

Android için Secrets Gradle eklentisini Google Haritalar projenize yüklemek üzere:

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

    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çıp 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 değerlerinin 34 olarak ayarlandığından emin olun.
  4. Dosyayı kaydedin ve projenizi Gradle ile senkronize edin.
  5. Üst düzey dizininizdeki secrets.properties dosyasını açıp aşağıdaki kodu ekleyin. YOUR_API_KEY yerine API anahtarınızı girin. secrets.properties, sürüm kontrol sistemine kontrol edilmekten hariç tutulduğu için anahtarınızı bu dosyada saklayın.
    MAPS_API_KEY=YOUR_API_KEY
  6. Dosyayı kaydedin.
  7. local.defaults.properties dosyasını üst düzey dizininizde, secrets.properties dosyasıyla aynı klasörde oluşturun ve ardından aşağıdaki kodu ekleyin.

    MAPS_API_KEY=DEFAULT_API_KEY

    Bu dosyanın amacı, secrets.properties dosyası bulunamazsa API anahtarı için yedek bir konum sağlamak ve böylece derlemelerin başarısız olmasını önlemektir. Bu durum, uygulamayı secrets.properties dosyasını atlayan bir sürüm kontrol sisteminden klonladıysanız ve API anahtarınızı sağlamak için henüz yerel olarak bir secrets.properties dosyası oluşturmadıysanız ortaya çıkabilir.

  8. Dosyayı kaydedin.
  9. AndroidManifest.xml dosyanızda com.google.android.geo.API_KEY bölümüne gidin ve android:value attribute değerini güncelleyin. <meta-data> etiketi yoksa <application> etiketinin alt öğesi olarak oluşturun.
    <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 için Haritalar SDK'sı da dahil olmak üzere Android platformundaki birden fazla Google Haritalar tabanlı API'de kimlik doğrulaması yapmak için kullanılabilir. API, geriye dönük uyumluluk için com.google.android.maps.v2.API_KEY adını da destekler. Bu eski ad yalnızca Android Maps API v2 ile kimlik doğrulamasına olanak tanır. Bir uygulama, API anahtarı meta veri adlarından yalnızca birini belirtebilir. Her ikisi de belirtilirse API bir istisna oluşturur.

  10. Android Studio'da modül düzeyindeki build.gradle.kts veya build.gradle dosyanızı açıp secrets mülkünü düzenleyin. secrets mülkü yoksa ekleyin.

    propertiesFileName değerini secrets.properties, defaultPropertiesFileName değerini local.defaults.properties ve diğer özellikleri ayarlamak için eklentinin özelliklerini düzenleyin.

    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.*"
    }
            

Kodu inceleme

Şablon tarafından sağlanan kodu inceleyin. Özellikle Android Studio projenizde aşağıdaki dosyalara bakın.

Haritalar etkinliği dosyası

Haritalar etkinlik dosyası, uygulamanın ana etkinliğidir ve haritayı yönetmek ve görüntülemek için gereken kodu içerir. Etkinliği tanımlayan dosya varsayılan olarak MapsActivity.java olarak adlandırılır. Uygulamanızın dilini Kotlin olarak ayarlarsanız dosya adı MapsActivity.kt olur.

Haritalar etkinliğinin ana unsurları:

  • SupportMapFragment nesnesi, haritanın yaşam döngüsünü yönetir ve uygulamanın kullanıcı arayüzünün üst öğesidir.

  • GoogleMap nesnesi, harita verilerine ve görünüme erişim sağlar. Bu, Android için Haritalar SDK'sının ana sınıfıdır. SupportMapFragment ve GoogleMap nesneleri, Harita Nesneleri kılavuzunda daha ayrıntılı olarak açıklanmaktadır.

  • moveCamera işlevi, haritayı Sidney, Avustralya'nın LatLng koordinatlarına merkezler. Harita eklerken yapılandırmanız gereken ilk ayarlar genellikle harita konumu ve kamera ayarlarından (ör. görüntüleme açısı, harita yönü ve yakınlaştırma düzeyi) oluşur. Ayrıntılar için Kamera ve Görüntü kılavuzuna bakın.

  • addMarker işlevi, Sydney'nin koordinatlarına bir işaretçi ekler. Ayrıntılar için İşaretçi kılavuzuna bakın.

Modül Gradle dosyası

build.gradle.kts modülü dosyası, Android için Haritalar SDK'sı tarafından gereken aşağıdaki Haritalar bağımlılığını içerir.

dependencies {

    // Maps SDK for Android
    implementation("com.google.android.gms:play-services-maps:19.0.0")
}

Haritalar bağımlılığını yönetme hakkında daha fazla bilgi edinmek için Sürümlendirme bölümüne bakın.

XML düzen dosyası

activity_maps.xml dosyası, uygulamanın kullanıcı arayüzünün yapısını tanımlayan XML düzen dosyasıdır. Dosya res/layout dizinindedir. activity_maps.xml dosyası aşağıdaki öğeleri içeren bir parça tanımlar:

  • tools:context, haritalar etkinlik dosyasında tanımlanan MapsActivity değerini, parçanın varsayılan etkinliği olarak ayarlar.
  • android:name, haritalar etkinlik dosyasında kullanılan parça türü olan SupportMapFragment olarak parçanın sınıf adını ayarlar.

XML düzen dosyası aşağıdaki kodu içerir:

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:map="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MapsActivity" />

Uygulamayı dağıtma ve çalıştırma

Haritanın ve işaretleyicinin Avustralya&#39;nın Sidney şehrine odaklandığı ekran görüntüsü.

Uygulamayı başarıyla çalıştırdığınızda, aşağıdaki ekran görüntüsünde görüldüğü gibi Sydney, Avustralya'yı merkeze alan ve şehirde bir işaretçi bulunan bir harita gösterilir.

Uygulamayı dağıtmak ve çalıştırmak için:

  1. Uygulamanızı çalıştırmak için Android Studio'da Çalıştır menü seçeneğini (veya oynat düğmesi simgesini) tıklayın.
  2. Cihaz seçmeniz istendiğinde aşağıdaki seçeneklerden birini belirleyin:
    • Bilgisayarınıza bağlı Android cihazı seçin.
    • Alternatif olarak, Emülatör'ü başlat radyo düğmesini ve ayarladığınız sanal cihazı seçin.
  3. Tamam'ı tıklayın. Android Studio, uygulamanızı derlemek için Gradle'i başlatır ve ardından sonuçları cihazınızda veya emülatörde gösterir. Uygulamanın başlatılması birkaç dakika sürebilir.

Sonraki adımlar

  • Harita oluşturma: Bu dokümanda, haritanız için kamera konumu, harita türü, kullanıcı arayüzü bileşenleri ve hareketler gibi ilk ve çalışma zamanı ayarlarının nasıl yapılacağı açıklanmaktadır.

  • Android uygulamanıza harita ekleme (Kotlin): Bu codelab'de, Android için Haritalar SDK'sının bazı ek özelliklerini gösteren bir uygulamada size yol gösterilir.

  • Haritalar Android KTX kitaplığını kullanın: Bu Kotlin uzantıları (KTX) kitaplığı, Android için Haritalar SDK'sını kullanırken çeşitli Kotlin dili özelliklerinden yararlanmanıza olanak tanır.