نقل إلى صورة المكان (جديد)

تتوافق حزمة تطوير برامج الأماكن لأجهزة iOS مع صورة المكان الحالية. إذا كنت على دراية بميزة "صورة المكان" الحالية، فإن الإصدار الجديد من صورة المكان سيجري التغييرات التالية:

  • تستخدم نموذج أسعار جديدًا. للحصول على معلومات عن الأسعار لجميع واجهات برمجة التطبيقات، يُرجى الاطّلاع على أسعار حزمة تطوير برامج الأماكن لأجهزة iOS (جديد).

  • تدعم صورة المكان الحالية حدًا أقصى لحجم الصورة يبلغ 1600 × 1600 بكسل. تدعم صورة المكان (جديدة) أحجامًا تصل إلى 4800 × 4800 بكسل.

  • لتقديم طلب، يمكنك استدعاء الطريقة 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: ")
    }
  )
}

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
    }
  }];
}];