Places SDK สำหรับ iOS รองรับรายละเอียดสถานที่ (เดิม) หากคุณคุ้นเคยกับ Places SDK สำหรับ iOS (เดิม) รายละเอียดสถานที่ (ใหม่) จะทำการเปลี่ยนแปลงต่อไปนี้
ใช้รูปแบบการกำหนดราคาใหม่ ดูข้อมูลราคาสำหรับ API ทั้งหมดได้ที่ ราคาสำหรับ Places SDK สำหรับ iOS (ใหม่)
ต้องมีการมาสก์ฟิลด์ คุณต้องระบุช่องที่ต้องการให้แสดงผล ในการตอบกลับ ไม่มีรายการฟิลด์ที่แสดงผลเริ่มต้น หากคุณละเว้น รายการนี้ เมธอดจะแสดงข้อผิดพลาด
หากต้องการส่งคำขอ ให้เรียกใช้เมธอด new
GMSPlacesClient fetchPlaceWithRequest:ส่งไปยังคำขอ
อินสแตนซ์ของคลาส
GMSFetchPlaceRequestใหม่ที่กำหนดพารามิเตอร์คำขอทั้งหมด เช่น รหัสสถานที่และโทเค็นเซสชันการเรียกกลับประเภท
GMSPlaceResultCallbackเพื่อจัดการการตอบกลับ
การตอบกลับมีอินสแตนซ์
GMSPlaceที่มีรายละเอียดเกี่ยวกับสถานที่ ตอนนี้ค่าในพร็อพเพอร์ตี้typesของอินสแตนซ์GMSPlaceจะกำหนดโดยตาราง ก และตาราง ขอินสแตนซ์การตอบกลับ
GMSPlaceมีพร็อพเพอร์ตี้reviewsใหม่ของประเภทGMSPlaceReviewเมื่อแอปแสดงข้อมูลที่ได้จากอินสแตนซ์GMSPlaceเช่น รูปภาพและรีวิว แอปจะต้องแสดงการระบุแหล่งที่มาที่จำเป็นด้วยดูข้อมูลเพิ่มเติมได้ในเอกสารเกี่ยวกับการระบุแหล่งที่มา
อินสแตนซ์การตอบกลับ
GMSPlaceมีฟังก์ชันสมาชิกต่อไปนี้isOpenคำนวณว่าสถานที่เปิดทำการในเวลาที่กำหนดหรือไม่isOpenAtDateคำนวณว่าสถานที่เปิดในวันที่ที่ระบุหรือไม่
ฟังก์ชันเหล่านี้จะใช้ได้เมื่อคุณเปิดใช้ Places SDK สำหรับ iOS เท่านั้น แต่จะใช้ไม่ได้เมื่อคุณเปิดใช้ Places SDK สำหรับ iOS (ใหม่) ดูข้อมูลเพิ่มเติมได้ที่เลือกเวอร์ชัน SDK
ตัวอย่างคำขอ
รายละเอียดสถานที่ (ใหม่) ช่วยให้คุณส่งคำขอและ
ส่งพารามิเตอร์ทั้งหมดในอินสแตนซ์ GMSFetchPlaceRequest ตัวอย่างนี้ยังใช้มาสก์ฟิลด์เพื่อให้การตอบกลับมีเฉพาะชื่อที่แสดง
และ URL ของเว็บไซต์สำหรับสถานที่ด้วย
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); } }];