Places SDK for iOS unterstützt die bestehende Ortsfoto. Wenn Sie mit dem bereits vorhandenen Place Photo vertraut sind, wird das neue Version von Place Photo nimmt folgende Änderungen vor:
Verwendet ein neues Preismodell. Preisinformationen für alle APIs finden Sie unter Preise für das Places SDK for iOS (neu)
Das vorhandene Ortsfoto unterstützt die maximale Anzahl von Fotos. Größe von 1600 x 1600 Pixel. Ortsfoto (Neu) unterstützt Größen von bis zu 4.800 x 4.800 Pixeln.
Rufen Sie für eine Anfrage das neue
GMSPlacesClient fetchPhotoWithRequest:callback:
auf. .Übergeben Sie die Anfrage an die Anfrage:
Eine Instanz des neuen
GMSFetchPhotoRequest
, die alle Anfrageparameter einschließlich der maximalen Bildgröße definiert.Einen Callback des Typs
GMSPlacePhotoMetadataResultCallback
um die Antwort zu verarbeiten.
Jedes Foto wird durch eine
GMSPlacePhotoMetadata
Instanz. Für das neue Places SDK for iOS:GMSPlacePhotoMetadata
Instanz eine neueauthorAttribution
das durch das neue Feld GMSPlaceAuthorAttribution .Wenn die zurückgegebene
GMSPlacePhotoMetadata
-Instanz Folgendes enthält:attributions
oderauthorAttribution
, müssen Sie diese Quellenangaben in Ihre überall dort, wo das Bild zu sehen ist. Weitere Informationen finden Sie in der Dokumentation zu Quellenangaben.
Beispielanfrage
Mit der folgenden Beispielmethode wird das erste Foto im Liste zurückgegeben. Sie können diese Methode als Vorlage für die Methode verwenden, in Ihrer eigenen App erstellen können.
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 } }]; }];