Places SDK for iOS supports Place Photo (Legacy). If you are familiar with Place Photo (Legacy), Place Photo (New) makes the following changes:
- Uses a new pricing model. For pricing information for all APIs, see Pricing for the Places SDK for iOS (New). 
- Place Photo (Legacy) supported a maximum photo size of 1600 by 1600 pixels. Place Photo (New) supports sizes up to 4800 by 4800 pixels. 
- To make a request, call the new - GMSPlacesClient fetchPhotoWithRequest:callback:method.
- Pass to the request: - An instance of the new - GMSFetchPhotoRequestclass that defines all request parameters, including the max image size.
- A callback of type - GMSPlacePhotoMetadataResultCallbackto handle the response.
 
- Each photo is represented by a - GMSPlacePhotoMetadatainstance. For Places SDK for iOS (New) the- GMSPlacePhotoMetadatainstance contains a new- authorAttributionfield represented by the new- GMSPlaceAuthorAttributionclass.- If the returned - GMSPlacePhotoMetadatainstance includes- attributionsor- authorAttribution, you must include these attributions in your application wherever you display the image. See the documentation on attributions.
Example request
The following example method takes a place ID and gets the first photo in the returned list. You can use this method as a template for the method you will create in your own app.
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 } }]; }];