Panduan Memulai Maps SDK for Android

Buat aplikasi Android yang menampilkan peta dengan menggunakan template Google Maps Views untuk Android Studio. Jika Anda sudah memiliki project Android Studio yang ingin disiapkan, lihat Menyiapkan project Android Studio.

Panduan memulai ini ditujukan bagi developer yang sudah memahami pengembangan Android dasar dengan Kotlin atau Java.

Tentang lingkungan pengembangan

Panduan memulai ini dikembangkan menggunakan Android Studio Hedgehog dan plugin Android Gradle versi 8.2.

Menyiapkan perangkat Android

Untuk menjalankan aplikasi yang menggunakan Maps SDK for Android, Anda harus men-deploy aplikasi tersebut ke perangkat Android atau emulator Android yang menggunakan Android 5.0 atau yang lebih tinggi dan menyertakan Google API.

  • Untuk menggunakan perangkat Android, ikuti petunjuk pada halaman Menjalankan aplikasi di perangkat hardware.
  • Untuk menggunakan Android Emulator, Anda dapat membuat perangkat virtual dan menginstal emulator dengan menggunakan AVD (Perangkat Virtual Android) Manager yang disertakan bersama Android Studio.

Membuat project Google Maps di Android Studio

Prosedur untuk membuat project Google Maps di Android Studio telah diubah dalam Android Studio versi Flamingo ke atas.

  1. Buka Android Studio, lalu klik New Project di jendela Welcome to Android Studio.

  2. Di jendela New Project, dalam kategori Phone and Tablet, pilih No Activity, lalu klik Next.

  3. Lengkapi formulir New Project:

    • Setel Language ke Java atau Kotlin. Kedua bahasa didukung sepenuhnya oleh Maps SDK for Android. Untuk mempelajari Kotlin lebih lanjut, lihat halaman Mengembangkan aplikasi Android dengan Kotlin.

    • Tetapkan Minimum SDK ke versi SDK yang kompatibel dengan perangkat pengujian Anda. Anda harus memilih versi yang lebih tinggi dari versi minimum yang diperlukan oleh Maps SDK for Android versi 19.0.x, yaitu Android API Level 21 ("Lollipop"; Android 5.0) atau yang lebih tinggi. Lihat Catatan Rilis untuk mengetahui informasi terbaru tentang persyaratan versi SDK.

    • Tetapkan Build configuration language ke Kotlin DSL atau Groovy DSL. Cuplikan untuk kedua bahasa konfigurasi build tersebut ditampilkan di prosedur berikut.

  4. Klik Finish.

    Android Studio memulai Gradle dan membuat project. Proses ini mungkin berlangsung lama.

  5. Tambahkan Google Maps Views Activity:

    1. Klik kanan pada folder app di project Anda.
    2. Pilih New > Google > Google Maps Views Activity.

      Tambahkan aktivitas Maps.

    3. Di kotak dialog New Android Activity, centang kotak Launcher Activity.

    4. Pilih Finish.

      Untuk informasi selengkapnya, lihat Menambahkan kode dari template

  6. Setelah proses build selesai, Android Studio akan membuka file AndroidManifest.xml dan MapsActivity. Aktivitas Anda mungkin memiliki nama berbeda, tetapi yang akan digunakan adalah nama yang dikonfigurasi selama penyiapan.

Menyiapkan project Google Cloud

Selesaikan langkah-langkah penyiapan Konsol Cloud yang diperlukan dengan mengklik tab berikut:

Langkah 1

Konsol

  1. Di Konsol Google Cloud, pada halaman pemilih project, klik Create Project untuk mulai membuat project Cloud baru.

    Buka halaman pemilih project

  2. Pastikan penagihan diaktifkan untuk project Cloud Anda. Konfirmasi bahwa penagihan diaktifkan untuk project Anda.

    Google Cloud menawarkan uji coba tanpa biaya. Masa uji coba berakhir setelah 90 hari atau setelah akumulasi tagihan akun mencapai $300, mana saja yang lebih dulu. Batalkan kapan saja. Google Maps Platform memberikan kredit bulanan berulang sebesar $200. Untuk informasi selengkapnya, lihat Kredit akun penagihan dan Penagihan.

Cloud SDK

gcloud projects create "PROJECT"

Baca selengkapnya tentang Google Cloud SDK, Penginstalan Cloud SDK, dan perintah berikut:

Langkah 2

Untuk menggunakan Google Maps Platform, Anda harus mengaktifkan API atau SDK yang akan digunakan dengan project.

Konsol

Mengaktifkan Maps SDK for Android

Cloud SDK

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

Baca selengkapnya tentang Google Cloud SDK, Penginstalan Cloud SDK, dan perintah berikut:

Langkah 3

Langkah ini hanya ada di proses pembuatan Kunci API. Jika Anda menggunakan Kunci API dalam produksi, kami sangat menyarankan agar Anda membatasi kunci API. Anda dapat menemukan informasi selengkapnya di halaman Menggunakan Kunci API spesifik per produk.

Kunci API adalah ID unik yang mengautentikasi permintaan terkait project untuk tujuan penggunaan dan penagihan. Anda harus memiliki setidaknya satu kunci API terkait project.

Untuk membuat kunci API:

Konsol

  1. Buka halaman Google Maps Platform > Credentials.

    Buka halaman Credentials

  2. Pada halaman Credentials, klik Create credentials > API key.
    Dialog API key created akan menampilkan kunci API yang baru dibuat.
  3. Klik Close.
    Kunci API baru dicantumkan pada halaman Credentials di bawah API keys.
    (Jangan lupa untuk membatasi kunci API sebelum menggunakannya dalam produksi.)

Cloud SDK

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

Baca selengkapnya tentang Google Cloud SDK, Penginstalan Cloud SDK, dan perintah berikut:

Menambahkan kunci API ke aplikasi

Bagian ini menjelaskan cara menyimpan kunci API sehingga dapat dirujuk dengan aman oleh aplikasi Anda. Anda tidak boleh memasukkan kunci API ke dalam sistem kontrol versi Anda, jadi sebaiknya simpan kunci tersebut dalam file secrets.properties, yang terletak di direktori root project Anda. Untuk informasi selengkapnya tentang file secrets.properties, lihat file properti Gradle.

Untuk menyederhanakan tugas ini, sebaiknya gunakan Plugin Secrets Gradle untuk Android.

Untuk menginstal Plugin Secrets Gradle untuk Android di project Google Maps:

  1. Di Android Studio, buka file build.gradle.kts atau build.gradle tingkat teratas dan tambahkan kode berikut ke elemen dependencies di bagian buildscript.

    Kotlin

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

    Groovy

    buildscript {
        dependencies {
            classpath "com.google.android.libraries.mapsplatform.secrets-gradle-plugin:secrets-gradle-plugin:2.0.1"
        }
    }
    
  2. Buka file build.gradle.kts atau build.gradle tingkat modul dan tambahkan kode berikut ke elemen plugins.

    Kotlin

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

    Groovy

    plugins {
        // ...
        id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'
    }
  3. Dalam file build.gradle.kts atau build.gradle tingkat modul, pastikan targetSdk dan compileSdk ditetapkan ke 34.
  4. Simpan file dan sinkronkan project Anda dengan Gradle.
  5. Buka file secrets.properties di direktori tingkat teratas, lalu tambahkan kode berikut. Ganti YOUR_API_KEY dengan kunci API Anda. Simpan kunci Anda dalam file ini karena secrets.properties tidak di-check in ke dalam sistem kontrol versi.
    MAPS_API_KEY=YOUR_API_KEY
  6. Simpan file.
  7. Buat file local.defaults.properties di direktori tingkat teratas, folder yang sama dengan file secrets.properties, lalu tambahkan kode berikut.

    MAPS_API_KEY=DEFAULT_API_KEY

    File ini ditujukan untuk menyediakan lokasi cadangan Kunci API jika file secrets.properties tidak dapat ditemukan agar build tidak gagal. Build dapat gagal jika Anda meng-clone aplikasi dari sistem kontrol versi yang menghapus secrets.properties dan Anda belum membuat file secrets.properties secara lokal untuk memberikan Kunci API Anda.

  8. Simpan file.
  9. Di file AndroidManifest.xml, buka com.google.android.geo.API_KEY, lalu perbarui android:value attribute. Jika tag <meta-data> tidak ada, buat tag tersebut sebagai turunan dari tag <application>.
    <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="${MAPS_API_KEY}" />

    Note: com.google.android.geo.API_KEY is the recommended metadata name for the API key. A key with this name can be used to authenticate to multiple Google Maps-based APIs on the Android platform, including the Maps SDK for Android. For backwards compatibility, the API also supports the name com.google.android.maps.v2.API_KEY. This legacy name allows authentication to the Android Maps API v2 only. An application can specify only one of the API key metadata names. If both are specified, the API throws an exception.

  10. In Android Studio, open your module-level build.gradle.kts or build.gradle file and edit the secrets property. If the secrets property does not exist, add it.

    Edit the properties of the plugin to set propertiesFileName to secrets.properties, set defaultPropertiesFileName to local.defaults.properties, and set any other properties.

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

    Groovy

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

Lihat kodenya

Periksa kode yang disediakan oleh template. Secara khusus, lihat file berikut di project Android Studio Anda.

File aktivitas Maps

File aktivitas peta adalah aktivitas utama untuk aplikasi, dan berisi kode untuk mengelola dan menampilkan peta. Secara default, file yang menentukan aktivitas diberi nama MapsActivity.java, atau MapsActivity.kt jika Anda menetapkan Kotlin sebagai bahasa aplikasi.

Elemen utama aktivitas Maps:

  • Objek SupportMapFragment mengelola siklus proses peta dan merupakan elemen induk dari UI aplikasi.

  • Objek GoogleMap memberikan akses ke data dan tampilan peta. Ini adalah class utama Maps SDK for Android. Panduan Objek Peta menjelaskan objek SupportMapFragment dan GoogleMap secara lebih detail.

  • Fungsi moveCamera memusatkan peta pada koordinat LatLng untuk Sydney, Australia. Setelan pertama yang dikonfigurasi saat menambahkan peta biasanya adalah lokasi peta dan setelan kamera; seperti sudut pandang, orientasi peta, dan tingkat zoom. Lihat panduan Kamera dan Tampilan untuk mengetahui detailnya.

  • Fungsi addMarker menambahkan penanda ke koordinat Sydney. Lihat panduan Penanda untuk mengetahui detailnya.

File Gradle Modul

File build.gradle.kts Modul menyertakan dependensi peta berikut, yang diperlukan oleh Maps SDK for Android.

dependencies {

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

Untuk mempelajari cara mengelola dependensi Maps lebih lanjut, lihat Pembuatan versi.

File tata letak XML

File activity_maps.xml adalah file tata letak XML yang menentukan struktur UI aplikasi. File tersebut terletak di direktori res/layout. File activity_maps.xml mendeklarasikan fragmen yang menyertakan elemen-elemen berikut:

  • tools:context menetapkan aktivitas default fragmen ke MapsActivity, yang ditentukan dalam file aktivitas peta.
  • android:name menetapkan nama class fragmen ke SupportMapFragment, yang merupakan jenis fragmen yang digunakan dalam file aktivitas peta.

File tata letak XML berisi kode berikut:

<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" />

Men-deploy dan menjalankan aplikasi

Screenshot berisi peta dan penanda yang dipusatkan ke Sydney, Australia.

Jika berhasil dijalankan, aplikasi akan menampilkan peta yang berpusat di Sydney, Australia dengan penanda di kota seperti yang terlihat pada screenshot berikut.

Untuk men-deploy dan menjalankan aplikasi:

  1. Di Android Studio, klik opsi menu Run (atau ikon tombol putar) untuk menjalankan aplikasi Anda.
  2. Jika diminta memilih perangkat, pilih salah satu opsi berikut:
    • Pilih perangkat Android yang terhubung ke komputer Anda.
    • Atau, pilih tombol pilihan Launch emulator dan pilih perangkat virtual yang Anda siapkan.
  3. Klik OK. Android Studio akan memulai Gradle untuk membangun aplikasi Anda, lalu menampilkan hasilnya di perangkat atau emulator. Perlu waktu beberapa menit sebelum aplikasi diluncurkan.

Langkah berikutnya