Log perubahan ini menjelaskan fitur baru dan perbaikan bug di setiap rilis Navigation SDK for Android.
18 Oktober 2021 - Membekukan dukungan untuk API Level 23, 24, dan 25
Sebagai respons terhadap perubahan pada dependensi internal kami, Android API Level 23, 24, dan 25 (Android 6, 7.0, dan 7.1) tidak akan didukung dalam versi baru Navigation dan Driver SDK untuk Android, mulai kuartal ketiga tahun 2022.
Navigation SDK dan Driver SDK untuk versi Android yang dirilis mulai kuartal ketiga 2022 hanya akan mendukung perangkat yang menjalankan minimum Android API Level 26.
Versi aplikasi yang dibuat dengan Navigation SDK dan Driver SDK v4.x atau yang lebih rendah untuk Android akan terus berfungsi pada perangkat yang menjalankan Android API Level 25 dan yang lebih lama.
Pengumuman penghentian penggunaan (21 Juni 2021)
Pengumuman ini menjelaskan penghentian penggunaan Navigation SDK for Android dan Driver SDK for Android sejak tanggal yang tercantum di atas. Pengumuman ini juga dikirim sebagai Pengumuman Layanan Wajib (MSA) kepada pelanggan yang terpengaruh.
Penghentian Navigation SDK for Android dan Driver SDK for Android v1.x
Nav/Driver SDK v1 dirilis pada tahun 2018, dan dengan versi v3 kami yang akan segera dirilis, kini saatnya menghentikan penggunaan v1 untuk menghindari keberlanjutan dukungan bagi banyak versi utama.
Waktu yang dihemat karena tidak perlu mendukung versi tambahan ini akan memungkinkan kami mendukung versi utama terbaru dengan lebih baik dan membangun lebih banyak fitur yang penting bagi pelanggan kami.
Dengan demikian, Nav/Driver SDK v1.x kini tidak digunakan lagi dan tidak lagi dikelola setelah 21 Juni 2022.
Luangkan waktu untuk melihat cara kerja penghentian penggunaan dalam versi SDK.
Lihat catatan rilis Navigation SDK untuk Android untuk mengetahui informasi tambahan tentang penghentian penggunaan Android.
Versi 1.51.1 (1 April 2022)
Perbaikan bug dan stabilitas
Memperbaiki hyperlink yang rusak dalam dialog Persyaratan Layanan.
Beberapa klien menerima error dialog Ketentuan Layanan saat Aktivitas Android dihancurkan. Sekarang klien tidak akan lagi mengalami error dialog ini saat aktivitas dihancurkan.
Versi 1.51 (18 Januari 2022)
Perubahan API
Meningkatkan level API Android minimum untuk Navigation SDK ke 23, dan menambah level API target ke 30. Versi target ini sesuai dengan persyaratan Google Play.
Merender polyline yang melacak tanda pangkat navigasi dalam warna "abu-abu" untuk menunjukkan bahwa pengguna sudah melewati bagian rute tersebut.
Versi 1.50 (3 November 2021)
- Varian Jetified dari Versi 1.22. Tidak ada perubahan yang dibuat di luar penggunaan library AndroidX.
Versi 1.22 (7 Oktober 2021)
Perbaikan bug dan stabilitas
- Memperbaiki bug kamera saat kamera berhenti mengikuti lokasi pengguna setelah stopNavigation dipanggil.
- Memperbaiki bug kamera saat tombol pusat muncul setelah melakukan backgrouding aplikasi.
- Memperbaiki potensi masalah kebocoran memori.
- Memperbaiki bug yang menyebabkan masalah ANR.
- Mencegah error berasal dari dialog Persyaratan Layanan.
Penghentian penggunaan
- Menghentikan penggunaan #setDestinations dengan token rute dan menggantinya dengan API baru yang menggunakan CustomRoutesOptions.
Fitur Baru
- Menambahkan fitur pengambilan asistif yang menambahkan ikon baru ke UI footer navigasi.
- Menambahkan dukungan Kendaraan Roda Dua untuk Rute Kustom.
Versi 1.21.1 (13 Juli 2021)
Perbaikan bug dan stabilitas
- Memperbaiki
IllegalStateException
yang terkait dengan pemeriksaan prasyarat yang terlalu ketat dalam kode penerapan. - Memperbaiki
NullPointerException
diNavigationView.onDestroy()
.
Versi 1.21 (23 Juni 2021)
Perubahan API
- Pemroses yang mempercepat kini didukung di navigasi headless. Hal ini memungkinkan
untuk memantau kecepatan tanpa merender
View
atauFragment
terlebih dahulu dari Navigation SDK.
Perbaikan bug dan stabilitas
- Meningkatkan keandalan pemuatan ubin peta dalam mode malam pada penginstalan aplikasi untuk pertama kali.
Penghentian penggunaan
Metode berikut tidak digunakan lagi dan digantikan dengan Navigator.setSpeedAlertOptions()
:
NavigationView.setSpeedAlertOptions()
SupportNavigationFragment.setSpeedAlertOptions()
NavigationFragment.setSpeedAlertOptions()
Versi 1.20.1 (14 Juli 2021)
Perbaikan bug dan stabilitas
- Memperbaiki
IllegalStateException
yang terkait dengan pemeriksaan prasyarat yang terlalu ketat dalam kode penerapan. - Memperbaiki
NullPointerException
diNavigationView.onDestroy()
.
Versi 1.20 (9 Maret 2021)
- Dependensi wajib baru telah ditambahkan. Tambahkan dependensi berikut ke
daftar dependensi Gradle untuk menghindari error runtime:
api 'joda-time:joda-time:2.9.9'
.
Perbaikan bug dan stabilitas
- Memperbaiki masalah saat konsumen Navigation SDK yang menggunakan Joda-Time mengalami konflik dengan versi jodatime yang di-obfuscate yang dikemas ke dalam library kami.
- Memperbaiki masalah saat Navigation SDK secara tidak sengaja menyembunyikan notifikasi aplikasi konsumen yang tidak dimilikinya saat meluncurkan sesi navigasi.
Versi 1.19 (15 Desember 2020)
Perubahan API
DriverSDK kini selalu mengirimkan data traffic ke FleetEngine. Sebelumnya, perilaku ini ditentukan oleh flag
UpdateVehicleResponse
; flag tersebut sekarang diabaikan.Konstruktor FleetEngine telah berubah; wrapper ditambahkan untuk
AuthTokenFactory
danStatusListener
.Menambahkan dua metode baru ke Navigator API untuk memungkinkan setelan dan penghapusan pemroses untuk sesi navigasi baru.
Menambahkan metode baru ke Navigator API untuk mendapatkan ID transaksi untuk sesi navigasi yang sedang berlangsung. API ini harus digunakan saat sesi navigasi baru dimulai dan saat ID transaksi berubah dalam sesi navigasi yang sedang berlangsung (mis., saat daftar segmen perjalanan diperbarui).
Versi 1.18 (9 Oktober 2020)
Menambahkan metode
setAbnormalTerminationReportingEnabled(boolean)
. Metode ini memungkinkan pengguna menonaktifkan pemantauan deteksi error.Memperbaiki bug yang menyebabkan
LocationListeners
tidak dapat dibatalkan pendaftarannya dari peristiwaonLocationChange
.Memperbaiki error gRPC yang menyebabkan
io.grpc.util.SecretRoundRobinLoadBalancerProvider$Provider
tidak dapat dibuat instance-nya.
Versi 1.17 (27 Agustus 2020)
Sekarang Anda dapat meneruskan token rute ke NavSDK untuk mengambil rute yang direpresentasikan oleh token rute tersebut. Token rute dikaitkan dengan respons rute saat Anda memanggil Routes Preferred API. API baru adalah
Navigator#setDestination(List<Waypoint> destinations, String routeToken)
.Beberapa dependensi wajib baru telah ditambahkan. Tambahkan dependensi berikut ke daftar dependensi Gradle untuk menghindari error runtime:
api 'com.google.android.datatransport:transport-api:2.2.0' api 'com.google.android.datatransport:transport-backend-cct:2.2.0' api 'com.google.android.datatransport:transport-runtime:2.2.0'
Versi 1.16 (10 Agustus 2020)
Fitur baru
Menambahkan
Waypoint.Builder.setVehicleStopover
API yang mengaktifkan/menonaktifkan relokasi persinggahan otomatis di rute saat titik jalan ditetapkan di tempat yang tidak memungkinkan untuk berhenti.Menambahkan parameter
SpeedAlertSeverity
ke callbackSpeedAlert
. Gunakan parameter ini denganSpeedingListener
.
Perbaikan bug dan stabilitas
Metode
NavigationApi.cleanUp
tidak digunakan lagi karena efek samping yang tidak diinginkan sepertiNullPointerExceptions
yang menyebabkan error.Waypoint.fromLatLng()
danWaypoint.fromPlaceId()
tidak digunakan lagi dan digantikan denganWaypoint.builder()
.Menghentikan penggunaan class
AddressListener
, yang terdapat dalamNavigationTransactionRecorder
, karena tidak digunakan.
Versi 1.15 (23 Maret 2020)
Fitur baru
Font/warna/ikon yang dapat disesuaikan untuk header Navigasi.
Mendukung penyesuaian warna jalur yang direkomendasikan di UI Header Navigasi.
Mengupdate beberapa API untuk mengikuti pola add-remove guna menyetel callback/pemroses. Metode
set*
sebelumnya telah ditandai sebagai tidak digunakan lagi dan akan dihapus dalam rilis mendatang. Metode yang tidak digunakan lagi tercantum di sini:SupportNavigationFragment.setOnNightModeChangedListener
SupportNavigationFragment.setOnRecenterButtonClickedListener
NavigationFragment.setOnNightModeChangedListener
NavigationFragment.setOnRecenterButtonClickedListener
NavigationView.setOnNightModeChangedListener
NavigationView.setOnRecenterButtonClickedListener
Navigator.setArrivalListener
Navigator.setRouteChangedListener
Navigator.setRemainingTimeOrDistanceChangedListener
Perbaikan bug dan stabilitas
Meningkatkan minSdkVersion untuk navsdk ke 19.
Memperbaiki bug saat nama lat/lng Waypoint tidak diikuti jika geocoding terbalik sisi server gagal.
Versi 1.14 (2 Februari 2020)
Fitur baru
(Beta) Operator dapat memengaruhi opsi rute mana yang diikuti oleh pengemudi dengan menetapkan jarak target untuk rute tersebut di permintaan rute. Fitur ini masih dalam versi Beta. Jika Anda tertarik, hubungi perwakilan teknik pelanggan Anda untuk mempelajari lebih lanjut.
Kompilasi SDK yang ditingkatkan ke API 29.
Perbaikan bug dan stabilitas
Memperbaiki bug dalam dialog Persyaratan Layanan yang mencegah dialog "Accept" bersifat wajib bagi pengemudi.
Memodifikasi perilaku penanganan pengecualian dalam komponen NDK untuk menghindari kondisi error.
Versi 1.13 (8 November 2019)
Fitur baru
Pengemudi kini dapat menerima notifikasi kecepatan saat melebihi batas kecepatan. Anda dapat menyesuaikan tampilan ikon peringatan kecepatan. Seperti yang dijelaskan dalam persyaratan layanan Google Maps Enterprise, Google tidak memberikan jaminan terkait kualitas fitur apa pun, termasuk akurasi fitur notifikasi kecepatan. Notifikasi kecepatan dimaksudkan hanya untuk tujuan informasi.
Menambahkan opsi pemilihan rute baru (
RoutingOptions
) yang memungkinkan Anda menampilkan rute alternatif selama pratinjau rute.Menambahkan perspektif kamera baru yang menunjukkan tampilan rute dari atas ke bawah, dengan orientasi rute sehingga kendaraan selalu menghadap ke depan. Anda dapat mengonfigurasi perspektif ini dengan memanggil
NavFragment.getCamera().followMyLocation(Camera.Perspective.TOP_DOWN_HEADING_UP)
.Menambahkan API baru (
resetFreeNav()
diRoadSnappedLocationProvider
) yang dapat Anda panggil untuk mereset layanan Nav Gratis setiap kali Anda berhenti menerima pembaruan lokasi pada pemroses terdaftar, saat navigasi tidak aktif.
Perbaikan bug dan stabilitas
- Memperbarui konten dialog Persyaratan Layanan.
Versi 1.12 (7 Oktober 2019)
Fitur baru
Sekarang Anda dapat menyembunyikan dan menampilkan satu atau semua rute alternatif selama navigasi.
Anda kini dapat menentukan strategi pemilihan rute dalam permintaan (rute lebih pendek/cepat).
Menambahkan kemampuan untuk menyesuaikan dialog Persyaratan dan Ketentuan sepenuhnya (ukuran teks, warna, dll.).
Perbaikan bug dan stabilitas
Memperbaiki class duplikat dalam masalah
com.google.http-client
.Mengupdate aplikasi demo untuk menggunakan Places SDK yang baru dan Jetified aplikasi demo.
Meningkatkan kecepatan frame kamera saat dalam ringkasan perjalanan.
Versi 1.11 (28 Juni 2019)
Peningkatan performa
- Latensi jaringan
setDestination
telah ditingkatkan.
Perbaikan bug
Memperbaiki inkonsistensi dengan callback
onArrival
saat menavigasi beberapa titik jalan.Memperbaiki masalah saat kedatangan mungkin dipicu lebih awal untuk titik jalan yang tidak dekat dengan lokasi saat ini.
java.lang.IllegalStateException
- Panggilan ke
NavigationView.onDestroy
tidak dapat mengikuti panggilan keNavigationView.onCreate
.
- Panggilan ke
Lain-Lain
Pembaruan lisensi software open source.
Menghapus info PWT rute pada rute - untuk menghapus data yang redundan dan untuk menyederhanakan UI.
Versi 1.10.2 (11 April 2019)
Perbaikan bug dan stabilitas
- Memperbaiki bug yang dapat menyebabkan IllegalStateException ditampilkan selama transisi siklus proses Fragmen: onCreate() ke onDestroy().
Versi 1.10 (11 April 2019)
Fitur
Header dialog Persyaratan dan Ketentuan yang Dapat Disesuaikan Anda dapat menyesuaikan teks judul kotak dialog Persyaratan dan Ketentuan menggunakan
showTermsAndConditionsDialog
.Penanda titik jalan Menghapus karakter alfanumerik dari penanda titik jalan.
Versi 1.9 (11 Februari 2019)
Fitur
Header Sekunder Anda dapat menambahkan konten kustom di bawah header navigasi menggunakan fitur kontrol kustom. Lihat posisi
SECONDARY_HEADER
untuk metodesetCustomControl
.Dependensi baru Tambahkan dependensi untuk Cronet dan Glide. Untuk mengetahui detailnya, lihat Memperbarui skrip build Gradle dalam topik Konfigurasi Project.
Masalah umum
- Jika aplikasi demo mengalami error dengan java.lang.ClassNotFoundException: Tidak menemukan class "com.example.navigationapidemo.SplashScreenActivity",
Anda perlu mengupdate dependensi untuk alat Build Gradle ke versi 3.3.1 atau yang lebih baru.
Dalam file
build.gradle
, pastikanbuildscript
cocok dengan contoh di bawah:
buildscript {
repositories {
mavenCentral()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.3.1'
}
}
Versi 1.8.1 (22 Januari 2019)
Perbaikan Bug dan stabilitas
- Error mode taksi dalam mode kamera tertentu telah diperbaiki.
- Berbagai peningkatan stabilitas.
Versi 1.8 (21 Desember 2018)
Fitur
Mode taksi - BETA: Aplikasi Anda dapat menggunakan jalur dan jalan yang dikhususkan untuk taksi guna memberikan informasi rute dan Perkiraan Waktu Kedatangan (PWT) untuk kendaraan yang diidentifikasi sebagai taksi.
Area geografis berikut saat ini didukung:
- Brasil: Rio de Janeiro
- Inggris: Birmingham, Coventry, London Metro Area, Manchester
- Israel: Tel Aviv
- Irlandia: Dublin
- Rusia: Moskow
- Skotlandia: Glasgow, Edinburgh
- Spanyol: Madrid, Barcelona
Perbaikan Bug dan stabilitas
- Perbaikan kebocoran memori
- Performa meningkat
Versi 1.7.3 (18 September 2018)
Perbaikan bug
NavigationView
kini dapat bertransisi darionStart
secara langsung keonStop
, sehingga tidak akan menghasilkanIllegalStateException
lagi.
Versi 1.7.2 (16 Agustus 2018)
Fitur
- Anda sekarang dapat menampilkan daftar rute selama navigasi untuk menampilkan belokan berikutnya untuk perjalanan. Daftar rute disediakan melalui
DirectionsListView
. - Sekarang Anda dapat mengambil status traffic menggunakan class
TimeAndDistance
melalui metodegetSeverity
. - Pembatasan pelat nomor kendaraan kini didukung.
Perbaikan bug
- Error sesekali dalam dialog Persyaratan Layanan (ditampilkan sebagai
IllegalStateException
) telah diperbaiki. - NullPointerException dengan pesan seperti "upaya menulis ke kolom ... pada referensi objek null" telah diperbaiki.
- ID resource di R.txt (sebelumnya semua 0x1) sekarang memiliki nilai yang benar.
Versi 1.6.2 (16 Juli 2018)
Perbaikan bug
- Memperbaiki NullPointerException di
AccessibilityStateUtils.getAccessibilityState()
.
Versi 1.6.0 (10 Mei 2018)
Perbaikan bug
- Memperbaiki bug yang menyebabkan info PWT yang salah pada segmen perjalanan dan rute alternatif.
- Memperbaiki NullPointerException jika nilai lintang dan/atau bujur untuk
lokasi adalah
null
. - Memperbaiki bug yang mencegah peta dimuat jika dialog ToS diterima saat offline.
- Memperkenalkan solusi untuk bug LocationManager Android OS 7.0 yang akan menghasilkan NPE di Navigation SDK.
Versi 1.5.0 (26 Maret 2018)
Fitur
- Mode malam: Anda kini dapat menyetel navigasi untuk menggunakan tema mode malam. Anda dapat mengaktifkan atau menonaktifkan mode malam secara terprogram, atau mengizinkan Navigation SDK secara otomatis mengalihkan tema berdasarkan waktu.
- Mode perjalanan Roda Dua (Beta): Anda kini dapat menetapkan mode perjalanan ke
TWO-WHEELER
untuk mendapatkan rute sepeda motor dan skuter. Fitur ini saat ini hanya tersedia di India dan Indonesia. - Batas kecepatan: Kini Anda dapat menampilkan atau menyembunyikan ikon batas kecepatan secara terprogram (ikon hanya muncul di lokasi tempat data batas kecepatan yang andal tersedia).
- Kontrol overlay peta kustom: Anda dapat menggunakan kontrol overlay peta kustom untuk memosisikan elemen UI secara dinamis saat bernavigasi.
- Panggilan
getNavigator()
kini menerima konteks Aplikasi sehingga dapat dipanggil dari layanan.
Perbaikan bug
- Beberapa masalah tata letak teks dalam dialog Persyaratan Layanan diatasi untuk meningkatkan tampilan bagi bahasa yang ditulis dari kanan ke kiri.
Versi 1.3.4 (24 Januari 2018)
- Memperbaiki bug yang menyebabkan
clearDestinations
terkadang gagal menghapus rute sebelumnya
Versi 1.3.3 (18 Desember 2017)
- Membuat class
CameraArbitrator
menjadi aman untuk thread karena digunakan di UI dan thread render; - Jangan tampilkan NPE jika peristiwa untuk
CompassButtonController
tiba setelahonDestroy()
dipanggil; - Menambahkan pemeriksaan null untuk metode publik NavigationApi. SDK akan menampilkan NPE yang paling dekat dengan kode developer.
Versi 1.3.2 (30 November 2017)
- Memperbaiki error saat terjadi error jaringan.
Versi 1.3.1 (14 November 2017)
- Memperbaiki notifikasi navigasi belokan demi belokan di Android 8.0 Oreo (API level 26) dan yang lebih baru.
- Memperbaiki masalah rute tidak terlihat jika diminta sebelum
membuat
NavigationView
atauNavigationFragment
.
Versi 1.3 (7 November 2017)
- Menambahkan metode
onTrimMemory()
keNavigationView
. Metode ini harus dipanggil oleh aktivitas yang memuatnya. Navigator.setDestinations()
sekarang akan menampilkan statusLOCATION_UNKNOWN
jika perbaikan lokasi tidak dapat ditemukan dalam waktu tunggu yang ditentukan. Waktu tunggu dapat disetel menggunakanRoutingOptions.locationTimeoutMs()
.- Titik link untuk gambar penanda kustom kini dapat ditetapkan menggunakan
MarkerOptions.anchor()
. NavigationMap
kini mengekspos objekProjection
yang dapat digunakan untuk mendapatkan batas lat/lng yang terlihat pada peta dengan mempertimbangkan padding.- Notifikasi navigasi belokan demi belokan pop-up kini dapat dinonaktifkan menggunakan
Navigator.setHeadsUpNotificationEnabled()
. - Tombol tengah ulang sekarang menawarkan pemroses yang diklik. Kolom ini dapat ditetapkan menggunakan
metode
setOnRecenterButtonClickedListener()
diNavigationView
,NavigationFragment
, danSupportNavigationFragment
.
Versi 1.2.6 (25 Oktober 2017)
- Memperbaiki NullPointerException yang dapat terjadi jika layanan navigasi otomatis dibuat ulang oleh OS.
NavigationView
tidak lagi menampilkan pengecualian jika metode siklus proses tertentu dipanggil dalam urutan yang salah, misalnya, panggilan berturut-turut keonStart()
atauonResume()
. Sebagai gantinya, pesan peringatan akan dicatat.
Versi 1.2.5 (19 Oktober 2017)
- Penambahan beberapa pengelolaan cache kartu yang lebih baik agar penggunaan memori tetap terkendali.
- Memperbaiki error yang dapat terjadi jika
Navigator.setDestinations()
dipanggil sebelum membuatNavigationView
atauNavigationFragment
.
Versi 1.2.4 (11 Oktober 2017)
- Memperbaiki kebocoran memori yang dapat terjadi saat membuat beberapa NavigationView tanpa adanya Navigator.
Versi 1.2.3 (4 Oktober 2017)
- Memperbaiki bug siklus proses yang terkadang menyebabkan penanda lokasiku menghilang.
- Memperbaiki instance lain saat peristiwa pengambilan dan penurunan dapat hilang.
Versi 1.2.2 (27 September 2017)
- Peningkatan latensi untuk mempercepat inisialisasi API dan panggilan ke
Navigator.setDestinations
.
Versi 1.2.1 (20 September 2017)
- Menambahkan
android:largeHeap="true"
ke manifes library. Tindakan ini mengurangi frekuensi OutOfMemoryErrors dan diperlukan untuk pengalaman navigasi yang andal. - Meningkatkan keandalan perekaman peristiwa pengambilan dan penurunan.
Versi 1.2 (1 September 2017)
- Jika orientasi perangkat tidak diketahui, peta kini muncul dalam mode ringkasan utara-atas yang terpusat dan menampilkan penanda lokasiku berbentuk lingkaran. Hal ini sangat berguna di awal perjalanan, untuk membantu pengguna mengorientasikan diri mereka sendiri dengan menyampaikan bahwa perangkat belum memiliki gambaran yang cukup baik ke arah mana perangkat tersebut menghadap.
- Kartu insiden lalu lintas memiliki desain baru dan muncul di bagian bawah peta, bukan posisi sebelumnya di bagian atas.
- Mengupdate pemrosesan lokasi untuk memastikannya berfungsi sebagaimana mestinya di Android 8.0 Oreo (API level 26).
- Memperbaiki bug saat penanda tujuan dirender secara berbeda dalam mode navigasi dan mode non-navigasi.
Versi 1.1.2 (16 September 2017)
- Meningkatkan keandalan perekaman peristiwa pengambilan dan penurunan.
Versi 1.1.1 (24 Agustus 2017)
- Memperbaiki IllegalStateException yang terkadang terjadi saat mengubah rute tanpa koneksi jaringan.
- Memperbaiki bug saat gaya visual peta berbeda sebelum dan sesudah memanggil
Navigator.setDestinations()
.
Versi 1.1 (31 Juli 2017)
- Memperbaiki bug saat
RoadSnappedLocationListener
terkadang tidak berfungsi saat aplikasi dikirim ke latar belakang. - Memperbaiki bug kamera saat memulai/menghentikan panduan.
- Memperbaiki bug di
Simulator.unsetUserLocation()
yang lokasi tidak direset dengan benar.
Versi 1.0 (5 Juli 2017)
- Peluncuran Navigation SDK.