Place Details

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Plattform auswählen: Android iOS JavaScript Webdienst

Das Places SDK for Android bietet Ihrer App umfangreiche Informationen zu Orten, z. B. den Namen und die Adresse des Orts, den als Breiten- und Längengrad angegebenen geografischen Standort, die Art des Orts (z. B. Nachtclub, Tierhandlung oder Museum). Um auf diese Informationen für einen bestimmten Ort zuzugreifen, können Sie die Orts-ID verwenden, eine stabile Kennung, die einen Ort eindeutig bezeichnet.

Ortsdetails

Das Objekt Place enthält Informationen zu einem bestimmten Ort. Sie können ein Place-Objekt auf folgende Weise abrufen:

Wenn Sie einen Ort anfordern, müssen Sie angeben, welche Arten von Ortsdaten zurückgegeben werden sollen. Übergeben Sie dazu einen List<Place.Field> und geben Sie die Datentypen an, die zurückgegeben werden sollen. Das ist ein wichtiger Faktor, da sich dies auf die Kosten für jede Anfrage auswirkt. Da Ortsdatenergebnisse nicht leer sein dürfen, werden nur Ortsergebnisse mit Daten zurückgegeben. Wenn ein angeforderter Ort zum Beispiel keine Fotos enthält, ist das Feld photos nicht im Ergebnis enthalten. Sie können eines oder mehrere der folgenden Felder angeben:

  • Place.Field.ADDRESS
  • Place.Field.ADDRESS_COMPONENTS
  • Place.Field.BUSINESS_STATUS
  • Place.Field.ID
  • Place.Field.LAT_LNG
  • Place.Field.NAME
  • Place.Field.OPENING_HOURS
  • Place.Field.PHONE_NUMBER
  • Place.Field.PHOTO_METADATAS
  • Place.Field.PLUS_CODE
  • Place.Field.PRICE_LEVEL
  • Place.Field.RATING
  • Place.Field.TYPES
  • Place.Field.USER_RATINGS_TOTAL
  • Place.Field.ICON_URL
  • Place.Field.ICON_BACKGROUND_COLOR
  • Place.Field.VIEWPORT
  • Place.Field.UTC_OFFSET
  • Place.Field.WEBSITE_URI

Weitere Informationen zu Ortsfeldern Weitere Informationen zur Abrechnung von Ortsdatenanfragen finden Sie unter Nutzung und Abrechnung.

Verwenden Sie die folgenden Methoden, um Daten aus einem Place abzurufen:

  • getAddress(): Die Adresse des Orts im menschenlesbaren Format.
  • getAddressComponents(): Eine List von Adresskomponenten für diesen Ort. Sie dienen dazu, strukturierte Informationen über die Adresse eines Orts zu extrahieren, z. B. die Stadt, in der sich ein Ort befindet. Verwende diese Komponenten nicht für die Formatierung von Adressen. Rufe stattdessen getAddress() auf. Dadurch wird eine lokalisierte formatierte Adresse bereitgestellt.
  • getBusinessStatus(): Der Betriebsstatus des Orts, wenn es sich um ein Unternehmen handelt. Er kann einen der folgenden Werte enthalten: OPERATIONAL, CLOSED_TEMPORARILY, CLOSED PERMANENTLY.
  • getAttributions(): Die Quellenangaben, die dem Nutzer angezeigt werden müssen, wenn Daten vom Ort verwendet werden.
  • getID(): Die Textkennung für den Ort. Weitere Informationen zu Orts-IDs finden Sie weiter unten auf dieser Seite.
  • getLatLng(): Der geografische Standort des Orts, angegeben in Breiten- und Längengraden.
  • getName(): Der Name des Orts
  • getOpeningHours(): Der OpeningHours des Orts. Rufen Sie OpeningHours.getWeekdayText() auf, um eine Liste von Strings zurückzugeben, die die Öffnungszeiten und die Öffnungszeiten für jeden Wochentag darstellen. Rufen Sie OpeningHours.getPeriods() auf, um eine Liste von period-Objekten mit detaillierteren Informationen zurückzugeben, die den von getWeekdayText() bereitgestellten Daten entsprechen. Hinweis:Wenn ein Ort immer geöffnet ist, wird der Zeitraum als Sonntag um Mitternacht angegeben und closeEvent ist null.
  • getPhoneNumber(): Die Telefonnummer des Orts.
  • getPhotoMetadatas(): Die mit einem Foto verknüpften Metadaten, einschließlich des Bitmapbilds.
  • getPlusCode(): Der PlusCode-Speicherort dieses Orts.
  • getPriceLevel(): Die Preisebene für diesen Ort, zurückgegeben als Ganzzahl mit Werten von 0 (günstig) bis 4 (teuer).
  • getRating(): Eine aggregierte Bewertung des Orts, die als Gleitkommazahl mit einem Wert zwischen 1,0 und 5,0 zurückgegeben wird, basierend auf den aggregierten Nutzerrezensionen.
  • getTypes(): Eine Liste von Ortstypen, die diesen Ort beschreiben. Eine Liste der verfügbaren Ortstypen findest du in der Dokumentation zur Schnittstelle Place.
  • getUserRatingsTotal(): Die Gesamtzahl der Nutzerbewertungen für diesen Ort.
  • getIconUrl(): Die URL für eine schwarze Symbolmaske, die den Ortstyp darstellt.
  • getIconBackgroundColor: Die Hintergrundfarbe des Symbols für den Ortstyp.
  • getUtcOffsetMinutes(): Das UTC-Offset in Minuten.
  • getViewport(): Ein Darstellungsbereich, der als LatLngBounds-Objekt zurückgegeben wird. Er ist nützlich, um den Ort auf einer Karte darzustellen. Kann null zurückgeben, wenn die Größe des Orts nicht bekannt ist.
  • getWebsiteUri(): Der URI der Website des Orts, falls bekannt. Das ist die Website, die vom Unternehmen oder einer anderen mit dem Ort verknüpften Rechtspersönlichkeit verwaltet wird. Gibt null zurück, wenn keine Website bekannt ist.
  • isOpen(): Ein boolescher Wert, der angibt, ob der Ort derzeit geöffnet ist. Wenn keine Uhrzeit angegeben ist, wird die Standardeinstellung verwendet. isOpen wird nur zurückgegeben, wenn sowohl Place.Field.UTC_OFFSET als auch Place.Field.OPENING_HOURS verfügbar sind. Für genaue Ergebnisse solltest du die Felder Place.Field.BUSINESS_STATUS und Place.Field.UTC_OFFSET in deiner ursprünglichen Ortsanforderung anfordern. Andernfalls wird angenommen, dass das Unternehmen betriebsbereit ist. In diesem Video erfahren Sie, wie Sie isOpen mit Place Details verwenden.

Einige einfache Beispiele:

Java


final CharSequence name = place.getName();
final CharSequence address = place.getAddress();
final LatLng location = place.getLatLng();

      

Kotlin


val name = place.name
val address = place.address
val location = place.latLng

      

Ort nach ID anfordern

Die Orts-ID ist eine ID in Textform, mit der ein Ort eindeutig bezeichnet wird. Im Places SDK for Android können Sie die ID eines Orts abrufen, indem Sie Place.getId() aufrufen. Der Dienst Place Autocomplete gibt ebenfalls eine Place ID für jeden Ort zurück, der der angegebenen Suchanfrage und dem Filter entspricht. Sie können die Orts-ID speichern und verwenden, um das Objekt Place später noch einmal abzurufen.

Um einen Ort anhand der ID abzurufen, rufen Sie PlacesClient.fetchPlace() auf und übergeben Sie einen FetchPlaceRequest.

Die API gibt einen FetchPlaceResponse in einem Task zurück. Der FetchPlaceResponse enthält ein Place-Objekt, das der angegebenen Orts-ID entspricht.

Das folgende Codebeispiel zeigt, wie fetchPlace() aufgerufen wird, um Details für den angegebenen Ort abzurufen.

Java


// Define a Place ID.
final String placeId = "INSERT_PLACE_ID_HERE";

// Specify the fields to return.
final List<Place.Field> placeFields = Arrays.asList(Place.Field.ID, Place.Field.NAME);

// Construct a request object, passing the place ID and fields array.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);

placesClient.fetchPlace(request).addOnSuccessListener((response) -> {
    Place place = response.getPlace();
    Log.i(TAG, "Place found: " + place.getName());
}).addOnFailureListener((exception) -> {
    if (exception instanceof ApiException) {
        final ApiException apiException = (ApiException) exception;
        Log.e(TAG, "Place not found: " + exception.getMessage());
        final int statusCode = apiException.getStatusCode();
        // TODO: Handle error with given status code.
    }
});

      

Kotlin


// Define a Place ID.
val placeId = "INSERT_PLACE_ID_HERE"

// Specify the fields to return.
val placeFields = listOf(Place.Field.ID, Place.Field.NAME)

// Construct a request object, passing the place ID and fields array.
val request = FetchPlaceRequest.newInstance(placeId, placeFields)

placesClient.fetchPlace(request)
    .addOnSuccessListener { response: FetchPlaceResponse ->
        val place = response.place
        Log.i(PlaceDetailsActivity.TAG, "Place found: ${place.name}")
    }.addOnFailureListener { exception: Exception ->
        if (exception is ApiException) {
            Log.e(TAG, "Place not found: ${exception.message}")
            val statusCode = exception.statusCode
            TODO("Handle error with given status code")
        }
    }

      

Zuordnungen in der App anzeigen

Wenn in Ihrer App Ortsinformationen angezeigt werden, müssen diese auch Quellenangaben enthalten. Weitere Informationen finden Sie in der Dokumentation zu Quellenangaben.

Weitere Informationen zu Orts-IDs

Die im Places SDK for Android verwendete Orts-ID ist dieselbe Kennung wie die Places API. Jede Orts-ID kann sich nur auf einen Ort beziehen, ein Ort kann jedoch mehr als eine Orts-ID haben. Es gibt auch andere Gründe, aus denen ein Ort eine neue Orts-ID erhalten kann. Das kann zum Beispiel passieren, wenn ein Unternehmen umzieht.

Wenn du einen Ort über die Angabe einer Orts-ID anforderst, kannst du sicher sein, dass du immer denselben Ort in der Antwort erhältst (sofern der Ort noch existiert). Die Antwort kann jedoch eine Orts-ID enthalten, die sich von der in Ihrer Anfrage unterscheidet.

Weitere Informationen finden Sie unter Place ID – Übersicht.