Panduan ini menyoroti perbedaan utama antara Layanan Places lama dan class Place baru. Mengupgrade ke class Place menawarkan keunggulan yang signifikan, termasuk peningkatan performa dan model harga baru. Untuk mendapatkan hasil maksimal dari Places dan memastikan aplikasi Anda sudah yang terbaru, pahami perubahan yang dijelaskan dalam panduan ini.
Praktik terbaik penagihan untuk migrasi
Panduan ini berlaku jika penggunaan API Anda cukup tinggi untuk beralih ke harga tingkat kedua. Saat bermigrasi ke versi API yang lebih baru, Anda juga akan ditagih untuk SKU yang berbeda. Untuk menghindari peningkatan biaya selama bulan transisi, sebaiknya beralih ke API baru dalam produksi sedekat mungkin dengan awal bulan. Hal ini akan memastikan bahwa Anda mencapai tingkat harga bulanan yang paling hemat biaya selama bulan migrasi. Untuk informasi tentang tingkat harga, lihat halaman harga dan FAQ harga.
Mengaktifkan Places API
Class Place mengandalkan layanan Places API. Untuk menggunakan fitur class Place baru, Anda harus mengaktifkan Places API (Baru) di project Google Cloud terlebih dahulu. Untuk informasi selengkapnya, lihat Memulai.
Perubahan umum
Tabel berikut mencantumkan beberapa perbedaan utama antara PlacesService
dan Place
:
PlacesService (Lama) |
Place (Baru) |
---|---|
Metode memerlukan penggunaan callback untuk menangani objek hasil dan respons google.maps.places.PlacesServiceStatus . |
Menggunakan Promise, dan berfungsi secara asinkron. |
Metode memerlukan pemeriksaan PlacesServiceStatus . |
Tidak diperlukan pemeriksaan status, dapat menggunakan penanganan error standar. |
Kolom data tempat diformat menggunakan snake case. | Kolom data tempat diformat menggunakan camel case. |
Dibatasi pada kumpulan tetap jenis tempat dan kolom data tempat. | Memberikan pilihan yang diperluas untuk jenis tempat dan kolom data tempat yang diperbarui secara berkala. |
Perubahan khusus API
Class Place menyediakan API untuk menggunakan library Places, dan mendukung pola penggunaan modern seperti Promise. Class Place mengekspos kolom data tempat dan jenis tempat yang sama dengan Layanan Places lama, dan menyertakan banyak nilai baru untuk kolom data tempat dan jenis tempat.
Tabel ini menunjukkan cara fitur Layanan Tempat dikaitkan dengan class Place:
Memuat library Places
Cara aplikasi memuat library Places bergantung pada loader bootstrap yang
digunakan. Jika aplikasi Anda menggunakan impor library dinamis,
Anda dapat memuat library yang diperlukan saat runtime menggunakan operator await
untuk
memanggil importLibrary()
, seperti yang ditunjukkan di sini:
const { Place } = await google.maps.importLibrary("places");
Jika aplikasi Anda menggunakan tag pemuatan skrip langsung,
minta library places
dalam skrip loader:
<script async
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async&libraries=places&callback=initMap">
</script>
Pelajari lebih lanjut cara memuat Maps JavaScript API.
Bagian ini menyertakan panduan berikut untuk membantu Anda memigrasikan aplikasi agar dapat menggunakan Places API versi terbaru: