Ortsdetails (neu)

Plattform auswählen: Android iOS JavaScript Webdienst

Das Places SDK for iOS (New) stellt umfangreiche Informationen für Ihre App bereit zu Orten, einschließlich Name und Adresse des Orts, der geografischen Standort (Breiten-/Längengradkoordinaten), die Art des Ortes (z. B. wie Nachtclub, Tierhandlung, Museum) usw. Um auf diese Informationen für einen bestimmten Ort gefunden haben, können Sie die Orts-ID verwenden. Dies ist eine stabile Kennung, die einen Ort identifiziert.

Ortsdetails abrufen

Die GMSPlace -Klasse enthält Informationen zu einem bestimmten Ort, einschließlich aller Datenfelder, die in Felder für „Place Data“ (Neu). Erhalte GMSPlace durch Aufrufen von GMSPlacesClient fetchPlaceWithRequest:, Übergeben eines GMSFetchPlaceRequest-Objekts und eines Callback-Methode des Typs GMSPlaceResultCallback

Das Objekt GMSFetchPlaceRequest gibt Folgendes an:

  • (Erforderlich) Die Orts-ID, eine eindeutige Kennung für einen Ort im Google Places-Konto Datenbank und in Google Maps.
  • (Erforderlich) Die Liste der Felder, die im GMSPlace-Objekt zurückgegeben werden sollen, auch als Feldmaske, definiert durch GMSPlaceProperty Wenn Sie nicht mindestens ein Feld in der Feldliste angeben oder der Feldliste hinzu, gibt der Aufruf einen Fehler zurück.
  • (Optional) Der Regionscode, der zum Formatieren der Antwort verwendet wurde.
  • Optional: Das Sitzungstoken, mit dem eine Autocomplete-Sitzung (Neu) beendet wird.

„Place Details“-Anfrage stellen

In diesem Beispiel wird ein Ort anhand der ID abgerufen, wobei die folgenden Parameter übergeben werden:

  • Die Orts-ID von ChIJV4k8_9UodTERU5KXbkYpSYs.
  • Eine Feldliste, mit der angegeben wird, dass der Ortsname und die Website-URL zurückgegeben werden sollen.
  • GMSPlaceResultCallback um das Ergebnis zu verarbeiten.

Die API ruft die angegebene Callback-Methode auf und übergibt dabei eine GMSPlace -Objekt enthält. Wird der Ort nicht gefunden, hat das Objekt „place“ den Wert null.

Swift

// A hotel in Saigon with an attribution.
let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs"

// Specify the place data types to return.
let myProperties = [GMSPlaceProperty.name, GMSPlaceProperty.website].map {$0.rawValue}

// Create the GMSFetchPlaceRequest object.
let fetchPlaceRequest = GMSFetchPlaceRequest(placeID: placeID, placeProperties: myProperties, sessionToken: nil)

client.fetchPlace(with: fetchPlaceRequest, callback: {
  (place: GMSPlace?, error: Error?) in
  guard let place, error == nil else { return }
  print("Place found: \(String(describing: place.name))")
})

Objective-C

// A hotel in Saigon with an attribution.
NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs";

// Specify the place data types to return.
NSArray<NSString *> *myProperties = @[GMSPlacePropertyName, GMSPlacePropertyWebsite];

// Create the GMSFetchPlaceRequest object.
GMSFetchPlaceRequest *fetchPlaceRequest = [[GMSFetchPlaceRequest alloc] initWithPlaceID:placeID placeProperties: myProperties sessionToken:nil];

[placesClient fetchPlaceWithRequest: fetchPlaceRequest callback: ^(GMSPlace *_Nullable place, NSError *_Nullable error) {
    if (error != nil) {
      NSLog(@"An error occurred %@", [error localizedDescription]);
      return;
    } else {
    NSLog(@"Place Found: %@", place.name);
    NSLog(@"The place URL: %@", place.website);
  }
}];

GooglePlacesSwift

// A hotel in Saigon with an attribution.
let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs"
let fetchPlaceRequest = FetchPlaceRequest(
  placeID: placeID,
  placeProperties: [.name, .website]
)
switch await placesClient.fetchPlace(with: fetchPlaceRequest) {
case .success(let place):
  // Handle place
case .failure(let placesError):
  // Handle error
}

„Place Details“-Antwort

„Place Details“ gibt eine GMSPlace-Objekt mit Details zum Ort Im GMSPlace-Objekt werden nur die in der Feldliste angegebenen Felder ausgefüllt.

Zusammen mit den Datenfeldern hat das GMSPlace-Objekt im Bereich Antwort enthält die folgenden Member-Funktionen:

  • <ph type="x-smartling-placeholder"></ph> isOpen berechnet, ob ein Ort zur angegebenen Zeit geöffnet ist.
  • isOpenAtDate berechnet, ob ein Ort an einem bestimmten Datum geöffnet ist.

Erforderliche Parameter

Verwenden Sie das Objekt GMSFetchPlaceRequest, um die erforderlichen Parameter anzugeben.

Orts-ID

Die im Places SDK for iOS verwendete Orts-ID ist die dieselbe Kennung wie in der Places API, Places SDK for Android und andere Google-APIs. Jede Orts-ID kann sich nur auf einen Ort beziehen, ein Ort kann aber mehrere als eine Orts-ID.

Es gibt Umstände, die dazu führen können, dass ein Ort eine neue Orts-ID erhält. Zum Beispiel kann dies der Fall sein, wenn ein Unternehmen seinen Sitz verlagert.

Wenn Sie eine Orts-ID angeben, um einen Ort anzufordern, erhalten Sie in der Antwort immer dieselbe Stelle (wenn der Ort noch existiert). Beachten Sie jedoch, dass die Antwort eine Orts-ID enthalten kann, die die sich von der in Ihrer Anfrage unterscheiden.

Liste der Felder

Wenn Sie Ortsdetails anfordern, müssen Sie die Daten angeben, im GMSPlace-Objekt für den Ort als Feldmaske zurückgeben. So definieren Sie die Feldmaske ein Array von Werten aus GMSPlaceProperty an das GMSFetchPlaceRequest-Objekt an. Die Maskierung von Feldern ist eine bewährte Methode, um sicherzustellen, dass keine unnötigen Daten angefordert werden, trägt dazu bei, unnötige Verarbeitungszeiten und Gebühren zu vermeiden.

Geben Sie eines oder mehrere der folgenden Felder an:

  • Die folgenden Felder lösen die SKU „Place Details (ID Only)“ aus:

    GMSPlacePropertyPlaceID, GMSPlacePropertyName, GMSPlacePropertyPhotos

  • Die folgenden Felder lösen die SKU „Place Details (Location Only)“ aus:

    GMSPlacePropertyAddressComponents, GMSPlacePropertyFormattedAddress, GMSPlacePropertyCoordinate, GMSPlacePropertyPlusCode, GMSPlacePropertyTypes, GMSPlacePropertyViewport.

  • Die folgenden Felder lösen die SKU Place Details (Basic) aus:

    GMSPlacePropertyBusinessStatus, GMSPlacePropertyIconBackgroundColor, GMSPlacePropertyIconImageURL, GMSPlacePropertyUTCOffsetMinutes, GMSPlacePropertyWheelchairAccessibleEntrance

  • Die folgenden Felder lösen die SKU Place Details (Advanced) aus:

    GMSPlacePropertyCurrentOpeningHours, GMSPlacePropertySecondaryOpeningHours, GMSPlacePropertyPhoneNumber, GMSPlacePropertyPriceLevel, GMSPlacePropertyRating, GMSPlacePropertyOpeningHours, GMSPlacePropertyUserRatingsTotal, GMSPlacePropertyWebsite

  • Die folgenden Felder lösen die SKU Place Details (Preferred) aus:

    GMSPlacePropertyCurbsidePickup, GMSPlacePropertyDelivery, GMSPlacePropertyDineIn, GMSPlacePropertyEditorialSummary, GMSPlacePropertyReservable, GMSPlacePropertyReviews, GMSPlacePropertyServesBeer, GMSPlacePropertyServesBreakfast, GMSPlacePropertyServesBrunch, GMSPlacePropertyServesDinner, GMSPlacePropertyServesLunch, GMSPlacePropertyServesVegetarianFood, GMSPlacePropertyServesWine, GMSPlacePropertyTakeout

Im folgenden Beispiel wird eine Liste von zwei Feldwerte , um anzugeben, dass das von einer Anfrage zurückgegebene GMSPlace-Objekt den Parameter name und placeID:

Swift

// Specify the place data types to return.
let fields: [GMSPlaceProperty] = [.placeID, .name]
  

Objective-C

// Specify the place data types to return.
NSArray<GMSPlaceProperty *> *fields = @[GMSPlacePropertyPlaceID, GMSPlacePropertyName];
  

GooglePlacesSwift

// Specify the place data types to return.
let fields: [PlaceProperty] = [.placeID, .displayName]
    

Optionale Parameter

Verwenden Sie das Objekt GMSFetchPlaceRequest, um die optionalen Parameter anzugeben.

regionCode

Der Regionscode, der zum Formatieren der Antwort verwendet wird, angegeben als <ph type="x-smartling-placeholder"></ph> zweistelligen CLDR-Code eingeben. Dieser Parameter kann auch eine Verzerrung in den Suchergebnissen. Es gibt keinen Standardwert.

Wenn der Ländername des Adressfelds in der Antwort mit der Regionalcode wird der Ländercode bei der Adresse weggelassen.

Die meisten CLDR-Codes entsprechen den ISO 3166-1-Codes, mit einigen nennenswerten Ausnahmen. Die ccTLD des Vereinigten Königreichs lautet beispielsweise „uk“ (.co.uk), während der ISO 3166-1-Code „gb“ lautet (technisch für die Rechtspersönlichkeit des Vereinigten Königreichs Großbritannien und Nordirland“). Der Parameter kann sich gemäß geltendem Recht auf Ergebnisse auswirken.

sessionToken

Sitzungstokens sind vom Nutzer erstellte Strings, die die automatische Vervollständigung erfassen (Neu) Aufrufe als „Sitzungen“. Bei Autocomplete (New) werden Sitzungstokens verwendet, um Die Phasen „Abfrage“ und „Ortsauswahl“ einer Suche mit automatischer Vervollständigung durch Nutzer in einer separaten Sitzung gruppieren zu Abrechnungszwecken. Sitzungstokens werden an „Place Details (New)“ übergeben Aufrufe, die auf „Autocomplete“-Aufrufe („Neu“) folgen. Weitere Informationen finden Sie unter Sitzungstokens

Zuordnungen in der App anzeigen

Wenn Ihre App Informationen anzeigt, die von GMSPlacesClient, wie Fotos und Rezensionen, muss die App auch die erforderlichen Quellenangaben enthalten.

Beispielsweise kann die Eigenschaft reviews des Objekts GMSPlacesClient enthält ein Array mit bis zu fünf GMSPlaceReview Objekte. Jedes GMSPlaceReview-Objekt kann Attributionen und Autorenangaben enthalten. Wenn Sie die Rezension in Ihrer App präsentieren, müssen auch Namensnennungen und Autoren angezeigt werden. Namensnennung.

Weitere Informationen finden Sie in der Dokumentation zu Quellenangaben.