Mode Ringan

Maps SDK for Android dapat menampilkan gambar bitmap peta, yang menawarkan interaktivitas terbatas kepada pengguna. Peta ini disebut peta mode ringan.

Contoh kode

Repositori ApiDemos di GitHub mencakup contoh yang menunjukkan penggunaan mode ringan:

Ringkasan mode ringan

Peta mode ringan adalah gambar bitmap peta pada lokasi dan tingkat zoom yang ditetapkan. Mode ringan mendukung semua jenis peta (normal, hibrid, satelit, medan) dan subkumpulan fungsi yang disediakan oleh API lengkap. Mode ringan berguna jika Anda ingin menyediakan sejumlah peta dalam satu aliran, atau peta yang terlalu kecil untuk mendukung interaksi yang bermakna.

Pengguna yang sedang melihat peta tidak dapat melakukan zoom atau menggeser peta. Ikon pada peta memberi pengguna akses untuk melihat peta di aplikasi seluler Google Maps dan meminta rute.

Menambahkan peta mode ringan

Mode ringan menggunakan class dan antarmuka yang sama seperti Google Maps Android API lengkap. Anda dapat menetapkan GoogleMap ke mode ringan dengan cara berikut:

  • Baik sebagai atribut XML untuk MapView atau MapFragment
  • Maupun dalam objek GoogleMapOptions

Sebagai atribut XML untuk MapView atau MapFragment

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:map="http://schemas.android.com/apk/res-auto"
    android:name="com.google.android.gms.maps.MapFragment"
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    map:cameraZoom="13"
    map:mapType="normal"
    map:liteMode="true"/>

Di objek GoogleMapOptions

Java


GoogleMapOptions options = new GoogleMapOptions()
    .liteMode(true);

      

Kotlin


val options = GoogleMapOptions()
    .liteMode(true)

      

Untuk mengetahui detail tentang menetapkan status awal peta, lihat panduan untuk objek peta.

Intent untuk meluncurkan tampilan peta atau permintaan rute

Secara default, toolbar di kanan bawah peta berisi ikon yang memberikan akses ke tampilan peta atau permintaan rute di aplikasi seluler Google Maps. Anda dapat menonaktifkan toolbar dengan memanggil UiSettings.setMapToolbarEnabled(false). Untuk mengetahui detail selengkapnya, lihat dokumentasi toolbar.

Selain itu, secara default saat pengguna mengetuk peta, API akan memulai aplikasi seluler Google Maps. Anda dapat menggantinya menggunakan GoogleMap.setOnMapClickListener() untuk menetapkan pemroses Anda sendiri. Anda juga dapat menonaktifkan peristiwa klik pada peta, dengan memanggil setClickable() pada tampilan yang berisi MapView atau MapFragment. Untuk mengetahui detail mengenai kedua teknik ini, lihat dokumentasi peristiwa.

Peristiwa siklus proses

Saat menggunakan API dalam mode interaktif penuh, kelas MapView harus meneruskan semua metode siklus proses aktivitas ke metode yang sesuai di kelas MapView. Contoh metode siklus proses mencakup onCreate(), onDestroy(), onResume(), dan onPause().

Saat menggunakan kelas MapView dalam mode ringan, penerusan peristiwa siklus proses bersifat opsional, kecuali untuk situasi berikut:

  • Anda wajib memanggil onCreate(), atau, tidak ada peta yang akan muncul.
  • Jika ingin menampilkan titik Lokasiku pada peta mode ringan dan menggunakan sumber lokasi default, Anda harus memanggil onResume() dan onPause() karena sumber lokasi hanya akan diperbarui di antara panggilan ini. Jika menggunakan sumber lokasi sendiri, Anda tidak perlu memanggil kedua metode ini.

Fitur API yang didukung

Tabel berikut menjelaskan perilaku peta mode ringan untuk setiap area fungsi API. Jika aplikasi memanggil metode yang tidak didukung dalam mode ringan, API akan mencatat pesan peringatan.

Fungsi
Jenis peta
Didukung? Ya
Berikut adalah jenis peta yang tersedia melalui GoogleMapOptions.mapType() dan GoogleMap.setMapType(): MAP_TYPE_NORMAL, MAP_TYPE_SATELLITE, MAP_TYPE_TERRAIN, MAP_TYPE_HYBRID, MAP_TYPE_NONE
Polyline, poligon, lingkaran
Didukung? Ya
Fungsi mode ringan untuk bentuk cocok dengan API lengkap.
Proyeksi
Didukung? Ya
Fungsi mode ringan untuk Proyeksi cocok dengan API lengkap.
My Location
Didukung? Ya
Fungsi mode ringan untuk lapisan Lokasiku cocok dengan API lengkap.
Padding peta
Didukung? Ya
Dukungan mode ringan untuk padding peta cocok dengan API lengkap.
Jendela info
Didukung? Ya
Jika Anda menetapkan title() penanda, jendela info default akan muncul saat pengguna mengetuk penanda. Anda dapat menampilkan jendela info secara terprogram dengan memanggil showInfoWindow() pada penanda. Anda juga dapat membuat jendela info kustom melalui antarmuka InfoWindowAdapter.
Gaya peta dasar kustom
Didukung? Sebagian
Maps SDK for Android mendukung penataan gaya kustom untuk peta dasar. Mode Ringan hanya mendukung penataan gaya kustom berbasis JSON, bukan penataan gaya berbasis cloud yang memerlukan ID peta untuk merender peta bergaya.
Penanda
Didukung? Sebagian
Anda dapat menambahkan penanda dan merespons peristiwa klik. Anda juga dapat menambahkan ikon penanda kustom. Tidak mungkin menjadikan penanda dapat ditarik. Penanda pada peta mode ringan bersifat datar dan tidak dapat diputar.
Posisi kamera, zoom, dan animasi
Didukung? Sebagian

Anda dapat menetapkan target dan zoom kamera, tetapi bukan kemiringan atau poros. Tingkat zoom dibulatkan ke bilangan bulat terdekat dalam mode ringan. Memanggil GoogleMap.moveCamera() akan memberi Anda gambar peta mode ringan lainnya. Untuk mendapatkan informasi lebih lanjut tentang cara menetapkan dan memanipulasi kamera, lihat Mengubah Tampilan.

Memanggil GoogleMap.animateCamera() tidak akan menghasilkan animasi gerakan kamera. Tampilan kamera akan langsung berpindah ke posisi baru.

Peristiwa peta
Didukung? Sebagian

Mode ringan mendukung GoogleMap.setOnMapClickListener() dan GoogleMap.setOnMapLongClickListener().

Untuk menonaktifkan peristiwa klik pada peta dalam mode ringan, Anda dapat memanggil setClickable() pada tampilan yang berisi MapView atau MapFragment. Hal ini berguna, misalnya, saat menampilkan satu atau beberapa peta dalam tampilan daftar, saat Anda ingin peristiwa klik memanggil tindakan yang tidak terkait dengan peta.

Untuk mengetahui detailnya, lihat dokumentasi peristiwa.

Peta lantai dan bangunan
Didukung? Tidak
Mode ringan akan menampilkan ubin yang sama seperti Maps Static API. Artinya, jika denah lantai dalam ruangan diterapkan pada ubin default, ubin tersebut akan muncul. Jika tidak, ubin tersebut tidak akan muncul. Selain itu, Anda tidak dapat mengubah lantai yang ditampilkan atau memanipulasi alat pilih lantai.
Lapisan lalu lintas
Didukung? Tidak
GoogleMap.setTrafficEnabled() tidak didukung dalam mode ringan.
Overlay bumi
Didukung? Tidak
GoogleMap.addGroundOverlay() tidak didukung dalam mode ringan.
Overlay ubin
Didukung? Tidak
GoogleMap.addTileOverlay() tidak didukung dalam mode ringan.
Gestur
Didukung? Tidak
Mode ringan tidak mendukung gestur. Mengaktifkan dan menonaktifkan gestur tidak akan memberikan efek apa pun.
Street View
Didukung? Tidak
Street View tidak didukung dalam mode ringan.