Panduan ini menjelaskan berbagai fitur Library Aplikasi Mobil yang dapat Anda gunakan untuk menerapkan fungsi aplikasi lokasi menarik (POI).
Mendeklarasikan dukungan kategori dalam manifes Anda
Aplikasi Anda harus mendeklarasikan kategori aplikasi mobil androidx.car.app.category.POI
dalam filter intent CarAppService
.
Contoh berikut menunjukkan cara mendeklarasikan kategori aplikasi:
<application> ... <service ... android:name=".MyCarAppService" android:exported="true"> <intent-filter> <action android:name="androidx.car.app.CarAppService" /> <category android:name="androidx.car.app.category.POI"/> </intent-filter> </service> ... <application>
Mengakses template peta
Aplikasi POI dapat mengakses PlaceListMapTemplate
dan MapWithContentTemplate
.
PlaceListMapTemplate
dirancang khusus untuk menampilkan daftar POI bersama peta yang dirender oleh host.
MapWithContentTemplate
dapat digunakan untuk menampilkan daftar dan jenis konten di samping peta yang dirender oleh aplikasi Anda. Lihat Gambar peta untuk detail selengkapnya tentang penggunaan ini {i>template<i}.
Untuk mengakses template ini, aplikasi Anda harus mendeklarasikan Izin androidx.car.app.MAP_TEMPLATES
dalam file AndroidManifest.xml
-nya:
<manifest ...> ... <uses-permission android:name="androidx.car.app.MAP_TEMPLATES"/> ... </manifest>
Memuat ulang konten PlaceListMapTemplate
Anda dapat mengizinkan pengemudi memuat ulang konten dengan mengetuk tombol saat menjelajahi daftar tempat yang dibangun dengan PlaceListMapTemplate
. Implementasikan metode onContentRefreshRequested
antarmuka OnContentRefreshListener
, lalu gunakan PlaceListMapTemplate.Builder.setOnContentRefreshListener
untuk menetapkan pemroses pada template guna mengaktifkan pemuatan ulang daftar.
Cuplikan berikut menunjukkan cara menetapkan pemroses pada template:
Kotlin
PlaceListMapTemplate.Builder() ... .setOnContentRefreshListener { // Execute any desired logic ... // Then call invalidate() so onGetTemplate() is called again invalidate() } .build()
Java
new PlaceListMapTemplate.Builder() ... .setOnContentRefreshListener(() -> { // Execute any desired logic ... // Then call invalidate() so onGetTemplate() is called again invalidate(); }) .build();
Tombol muat ulang hanya ditampilkan dalam header PlaceListMapTemplate
jika pemroses memiliki nilai.
Saat pengguna mengklik tombol muat ulang, metode onContentRefreshRequested
dari implementasi OnContentRefreshListener
Anda akan dipanggil. Dalam onContentRefreshRequested
, panggil metode Screen.invalidate
. Host kemudian memanggil kembali ke metode Screen.onGetTemplate
aplikasi untuk mengambil template dengan konten yang dimuat ulang. Lihat Memuat ulang konten template untuk mengetahui informasi selengkapnya tentang memuat ulang template. Selama template berikutnya yang ditampilkan oleh onGetTemplate
memiliki jenis yang sama, template tersebut dianggap sebagai pemuatan ulang dan tidak dihitung dalam kuota template.
Mengintegrasikan dengan Asisten Google menggunakan Action Aplikasi
Aktifkan aplikasi POI Anda dengan suara menggunakan Asisten untuk memungkinkan pengguna menelusuri lokasi menarik dengan menanyakan hal-hal seperti, "Ok Google, temukan SPKLU terdekat di ExampleApp". Untuk petunjuk mendetail, lihat Action Aplikasi untuk Mobil.