Places SDK for iOS mendukung Place Details (Legacy). Jika Anda sudah familiar dengan Places SDK for iOS (Legacy), Place Details (Baru) melakukan perubahan berikut:
Menggunakan model harga baru. Untuk informasi harga semua API, lihat Harga Places SDK for iOS (Baru).
Penyamaran kolom wajib diisi. Anda harus menentukan kolom mana yang ingin ditampilkan dalam respons. Tidak ada daftar default kolom yang ditampilkan. Jika Anda tidak menyertakan daftar ini, metode akan menampilkan error.
Untuk membuat permintaan, panggil metode
GMSPlacesClient fetchPlaceWithRequest:baru.Teruskan ke permintaan:
Instance class
GMSFetchPlaceRequestbaru yang menentukan semua parameter permintaan, seperti ID tempat dan token sesi.Callback jenis
GMSPlaceResultCallbackuntuk menangani respons.
Respons berisi instance
GMSPlaceyang berisi detail tentang tempat. Nilai dalam propertitypesinstanceGMSPlacekini ditentukan oleh Tabel A dan Tabel B.Instance respons
GMSPlaceberisi propertireviewsbaru berjenisGMSPlaceReview. Saat aplikasi Anda menampilkan informasi yang diperoleh dari instanceGMSPlace, seperti foto dan ulasan, aplikasi juga harus menampilkan atribusi yang diperlukan.Untuk mengetahui informasi selengkapnya, lihat dokumentasi tentang atribusi.
Instance respons
GMSPlaceberisi fungsi anggota berikut:isOpenmenghitung apakah suatu tempat buka pada waktu tertentu.isOpenAtDatemenghitung apakah suatu tempat buka pada tanggal tertentu.
Fungsi ini hanya tersedia jika Anda mengaktifkan Places SDK for iOS. API ini tidak tersedia saat Anda mengaktifkan Places SDK for iOS (Baru). Untuk mengetahui informasi selengkapnya, lihat Memilih versi SDK Anda.
Contoh permintaan
Dengan Place Details (Baru), Anda membuat permintaan dan
meneruskan semua parameter dalam instance GMSFetchPlaceRequest. Contoh
ini juga menggunakan mask kolom sehingga respons hanya menyertakan nama tampilan
dan URL situs untuk tempat:
Swift
// A hotel in Saigon with an attribution. let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs" // Specify the place data types to return. let fields = [GMSPlaceProperty.name, GMSPlaceProperty.website].map {$0.rawValue} // Create the GMSFetchPlaceRequest instance. let fetchPlaceRequest = GMSFetchPlaceRequest(placeID: placeID, placeProperties: fields, sessionToken: nil) client.fetchPlaceWithRequest(fetchPlaceRequest: fetchPlaceRequest, callback: { (place: GMSPlace?, error: Error?) in guard let place, error == nil else { return } print("Place found: \(String(describing: place.name))") })
Objective-C
// A hotel in Saigon with an attribution. NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs"; // Specify the place data types to return. NSArray<NSString *> *fields = @[GMSPlacePropertyName, GMSPlacePropertyWebsite]; // Create the GMSFetchPlaceRequest instance. GMSFetchPlaceRequest *fetchPlaceRequest = [[GMSFetchPlaceRequest alloc] initWithPlaceID:placeID placeProperties: fields sessionToken:nil]; [placesClient fetchPlaceWithRequest: fetchPlaceRequest callback: ^(GMSPlace *_Nullable place, NSError *_Nullable error) { if (error != nil) { NSLog(@"An error occurred %@", [error localizedDescription]); return; } else { NSLog(@"Place Found: %@", place.name); NSLog(@"The place URL: %@", place.website); } }];