کیت توسعه نرمافزار Places برای iOS (قدیمی) از عکسهای مکان (قدیمی) پشتیبانی میکند. اگر با Place Photos (قدیمی) آشنایی دارید، Place Photos (جدید) تغییرات زیر را ایجاد میکند:
از مدل قیمتگذاری جدیدی استفاده میکند. برای اطلاعات قیمتگذاری همه میاناهای برنامهسازی کاربردی، استفاده و صدور صورتحساب را ببینید.
«عکسهای مکان» (قدیمی) از حداکثر اندازه عکس ۱۶۰۰ در ۱۶۰۰ پیکسل پشتیبانی میکرد. Place Photos (New) از اندازههای حداکثر ۴۸۰۰ در ۴۸۰۰ پیکسل پشتیبانی میکند.
برای درخواست کردن، روش جدید
GMSPlacesClient fetchPhotoWithRequest:callback:را فراخوانی کنید.به درخواست منتقل کنید:
نمونهای از کلاس جدید
GMSFetchPhotoRequestکه همه پارامترهای درخواست، ازجمله حداکثر اندازه تصویر را تعریف میکند.یک فراخوانی از نوع
GMSPlacePhotoMetadataResultCallbackبرای رسیدگی به پاسخ.
هر عکس با یک نمونه
GMSPlacePhotoMetadataنشان داده میشود. برای «کیت توسعه نرمافزار مکانها» ویژه iOS (جدید)، نمونهGMSPlacePhotoMetadataحاوی فیلد جدیدauthorAttributionاست که با کلاس جدیدGMSPlaceAuthorAttributionنشان داده میشود.اگر نمونه
GMSPlacePhotoMetadataبرگرداندهشده شاملattributionsیاauthorAttributionباشد، باید این ارجاعها را در هر جایی از برنامهتان که تصویر را نمایش میدهید اضافه کنید. اسناد مربوط به ارجاعها را ببینید.
درخواست نمونه
روش نمونه زیر شناسه مکان را میگیرد و اولین عکس را در فهرست برگرداندهشده دریافت میکند. میتوانید از این روش بهعنوان الگویی برای روشی که در برنامه خودتان ایجاد خواهید کرد استفاده کنید.
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: ") } ) }
آبجکتیو-سی
// 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 } }]; }];