Places SDK برای iOS از عکس مکان موجود پشتیبانی می کند. اگر با Place Photo موجود آشنا هستید، نسخه جدید Place Photo تغییرات زیر را اعمال می کند:
از مدل قیمت گذاری جدید استفاده می کند. برای اطلاعات قیمت گذاری برای همه API ها، به قیمت گذاری مکان ها SDK برای iOS (جدید) مراجعه کنید.
عکس مکان موجود حداکثر اندازه عکس 1600 در 1600 پیکسل را پشتیبانی می کند. عکس مکان (جدید) از اندازههای حداکثر 4800 در 4800 پیکسل پشتیبانی میکند.
برای درخواست، با متد جدید
GMSPlacesClient fetchPhotoWithRequest:callback:
تماس بگیرید.عبور به درخواست:
نمونه ای از کلاس جدید
GMSFetchPhotoRequest
که تمام پارامترهای درخواست، از جمله حداکثر اندازه تصویر را تعریف می کند.یک تماس از نوع
GMSPlacePhotoMetadataResultCallback
برای رسیدگی به پاسخ.
هر عکس با یک نمونه
GMSPlacePhotoMetadata
نشان داده می شود. برای Places SDK برای iOS (جدید) نمونهGMSPlacePhotoMetadata
حاوی یک فیلدauthorAttribution
جدید است که توسط کلاس جدیدGMSPlaceAuthorAttribution
نشان داده شده است.اگر نمونه
GMSPlacePhotoMetadata
برگردانده شده شاملattributions
یاauthorAttribution
باشد، باید هر جا که تصویر را نمایش میدهید، این اسناد را در برنامه خود قرار دهید. اسناد مربوط به اسناد را ببینید.
درخواست نمونه
روش مثال زیر یک شناسه مکان می گیرد و اولین عکس را در لیست برگشتی می گیرد. می توانید از این روش به عنوان الگوی روشی که در برنامه خود ایجاد می کنید استفاده کنید.
سویفت
// 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: ") } ) }
هدف-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 } }]; }];