SDK Địa điểm dành cho iOS hỗ trợ các Ảnh địa điểm. Nếu bạn đã quen với Ảnh địa điểm hiện có, phiên bản mới của Ảnh địa điểm thực hiện các thay đổi sau:
Sử dụng mô hình định giá mới. Để biết thông tin về giá cho tất cả API, hãy xem Đặt giá cho SDK Địa điểm dành cho iOS (Mới).
Ảnh địa điểm hiện có hỗ trợ tối đa ảnh kích thước 1600 x 1600 pixel. Hình ảnh địa điểm (Mới) hỗ trợ kích thước lên đến 4800 x 4800 pixel.
Để đưa ra yêu cầu, hãy gọi
GMSPlacesClient fetchPhotoWithRequest:callback:
mới .Chuyển đến yêu cầu:
Một phiên bản của
GMSFetchPhotoRequest
xác định tất cả các tham số yêu cầu, bao gồm cả kích thước hình ảnh tối đa.Lệnh gọi lại thuộc loại
GMSPlacePhotoMetadataResultCallback
để xử lý phản hồi.
Mỗi ảnh được đại diện bằng một
GMSPlacePhotoMetadata
thực thể. Đối với SDK Địa điểm dành cho iOS (Mới),GMSPlacePhotoMetadata
chứa một thực thể mớiauthorAttribution
được biểu thị bằng trường mã mới GMSPlaceAuthorAttribution .Nếu thực thể
GMSPlacePhotoMetadata
được trả về bao gồmattributions
hoặcauthorAttribution
, bạn phải đưa các thuộc tính này vào ở bất cứ nơi nào bạn hiển thị hình ảnh. Xem tài liệu về phân bổ.
Yêu cầu mẫu
Phương thức ví dụ sau đây lấy một mã địa điểm và lấy ảnh đầu tiên trong danh sách được trả về. Bạn có thể sử dụng phương thức này làm mẫu cho phương pháp mà bạn sẽ tạo trong ứng dụng của riêng bạn.
Swift
// A hotel in Saigon with an attribution. let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs" // Request list of photos for a place placesClient.lookUpPhotos(forPlaceID: placeID) { (photos, error) in guard let photoMetadata: GMSPlacePhotoMetadata = photos?.results[0] else { return } // Request individual photos in the response list let fetchPhotoRequest = GMSFetchPhotoRequest(photoMetadata: photoMetadata, maxSize: CGSizeMake(4800, 4800)) self.client.fetchPhoto(with: fetchPhotoRequest, callback: { (photoImage: UIImage?, error: Error?) in guard let photoImage, error == nil else { print("Handle photo error: ") return } print("Display photo Image: ") } ) }
Objective-C
// A hotel in Saigon with an attribution. NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs"; [placesClient lookUpPhotosForPlaceID:placeID callback: ^(GMSPlacePhotoMetadataList *list, NSError *error) { GMSPlacePhotoMetadata *photoMetadata = [list results][0]; // Request individual photos in the response list GMSFetchPhotoRequest *fetchPhotoRequest = [[GMSFetchPhotoRequest alloc] initWithPhotoMetadata:photoMetadata maxSize:CGSizeMake(4800, 4800)]; [placesClient fetchPhotoWithRequest:fetchPhotoRequest callback: ^(UIImage *_Nullable photoImage, NSError *_Nullable error) { if (error == nil) { // Display photo } }]; }];