انتقال به «عکس‌های مکان» (جدید)

«کیت توسعه نرم‌افزار مکان‌ها، ویژه iOS (قدیمی)» از عکس‌های مکان (قدیمی) پشتیبانی می‌کند. اگر با «عکس‌های مکان» (قدیمی) آشنا هستید، عکس‌های مکان (جدید) تغییرات زیر را ایجاد می‌کند:

  • از مدل قیمت‌گذاری جدیدی استفاده می‌کند. برای اطلاعات قیمت‌گذاری همه «میاناهای برنامه‌سازی کاربردی»، به استفاده و صورت‌حساب مراجعه کنید.

  • «عکس‌های مکان» (قدیمی) از حداکثر اندازه عکس ۱۶۰۰ در ۱۶۰۰ پیکسل پشتیبانی می‌کرد. «عکس‌های مکان» (جدید) از اندازه‌های حداکثر ۴۸۰۰ در ۴۸۰۰ پیکسل پشتیبانی می‌کند.

  • برای درخواست کردن، با 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
    }
  }];
}];