プレイス写真への移行(新規)

Places SDK for iOS は、Place Photo(以前のバージョン)をサポートしています。Place Photo(以前のバージョン)をご利用の場合、Place Photo(新バージョン)では次の変更が行われます。

  • 新しい料金モデルを使用します。すべての API の料金については、Places SDK for iOS(新版)の料金をご覧ください。

  • Place Photo(以前のバージョン)では、写真の最大サイズは 1,600×1,600 ピクセルでした。Place Photo(新規)は、最大 4,800×4,800 ピクセルのサイズをサポートしています。

  • リクエストを行うには、新しい GMSPlacesClient fetchPhotoWithRequest:callback: メソッドを呼び出します。

  • リクエストに渡します。

  • 各写真は GMSPlacePhotoMetadata インスタンスで表されます。Places SDK for iOS(新版)では、GMSPlacePhotoMetadata インスタンスに新しい authorAttribution フィールドが含まれています。このフィールドは、新しい GMSPlaceAuthorAttribution クラスで表されます。

    返された GMSPlacePhotoMetadata インスタンスに attributions または authorAttribution が含まれる場合は、アプリケーション内でその画像を表示するすべての箇所で、これらの帰属情報として組み込む必要があります。帰属に関するドキュメントをご覧ください。

リクエスト例

次のメソッドの例では、プレイス ID を取得し、返されたリストの最初の写真を取得します。このメソッドは、独自のアプリで作成するメソッドのテンプレートとして使用できます。

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