Es kann losgehen!

Bevor Sie mit der Entwicklung beginnen, lesen Sie bitte unsere Entwicklerdokumentation.

Die Google Places API for Android aktivieren

Zum Einstieg führen wir Sie durch die Google Developers Console, wo Sie vorab Folgendes tun müssen:

  1. Ein Projekt erstellen oder auswählen
  2. Die Google Places API for Android aktivieren
  3. Zugehörige Schlüssel erstellen
Weiter

Zuordnungen anzeigen

Wenn Sie Daten aus Google Places API for Android anzeigen, wie automatisch vervollständigte Ergebnisse oder Ortsnamen und Adressen, gibt es gewisse Zuordnungs- und Google Logo-Anforderungen, die Sie erfüllen müssen.

  1. Übersicht
  2. Eine Karte anzeigen
  3. Die Zuordnung „Powered by Google“
  4. Zuordnungen für Inhalte Dritter

Übersicht

Die Zuordnungs- und Logo-Anforderungen fallen in die folgenden Kategorien:

  • Eine Google-Karte, falls eine Karte angezeigt wird.
  • Die Zuordnung „Powered by Google“.
  • Zuordnungen für Inhalte, die von Dritten bereitgestellt werden.

Die Anforderungen gelten für das UI-Widget „Ortsauswahl“ und für die programmgesteuerten API-Aufrufe. Wenn von der App ein Ort über die Ortsauswahl abgerufen wird und dann die Daten auf einem Nachverfolgungsbildschirm ohne Karte anzeigt werden, müssen von der App Zuordnungen auf dem Nachverfolgungsbildschirm angezeigt werden.

Eine Karte anzeigen

Sie müssen keine Karte anzeigen. Falls Ihre Anwendung Daten aus Places API auf einer Karte anzeigt, muss diese Karte eine Google-Karte mit sichtbarem Google-Logo sein. Anwendungen, die Places API-Daten auf demselben Bildschirm wie eine Google-Karte anzeigen, müssen keine weiteren Zuordnungen zu Google angeben.

Beachten Sie, dass Sie weiterhin relevante Zuordnungen für Inhalte Dritter anzeigen müssen.

Die Zuordnung „Powered by Google“

Falls Ihre Anwendung Places API-Daten auf einer Seite oder einer Ansicht ohne eine Google-Karte anzeigt, müssen Sie das Bild „Powered by Google“ zusammen mit den Daten anzeigen. Beispiel: Ihre Anwendung zeigt eine Ortsliste, die von der API abgerufen wurde, auf einem Bildschirm sowie eine Google-Karte mit diesen Orten auf einem anderen Bildschirm an. Auf dem ersten Bildschirm muss die Zuordnung „Powered by Google“ angezeigt werden.

Das Bild „Powered by Google“ ist in der Dienstebibliothek „Google Play“ in der richtigen Größe für Android-Apps enthalten. Sie dürfen diese Bilder nicht in der Größe oder auf sonstige Weise ändern:

  • Für eine Verwendung auf hellem Hintergrund: @drawable/powered_by_google_light
  • Für eine Verwendung auf dunklem Hintergrund: @drawable/powered_by_google_dark

Zuordnungen für Inhalte Dritter

Befolgen Sie die Anweisungen, um Zuordnungen für Dritte aus der Ortsauswahl oder anderen API-Aufrufen abzurufen und die Zuordnungen in Ihrer App anzuzeigen.

Zuordnungen aus der Ortsauswahl abrufen

Um Zuordnungen aus der Ortsauswahl abzurufen, rufen Sie die PlacePicker.getAttributions()-Methode auf und übergeben ihr den aktuellen Intent, der den Ort enthält, den der Benutzer ausgewählt hat. Diese Methode gibt eine HTML-Zeichenfolge bzw. null zurück, wenn es keine Attribute zum Anzeigen gibt.

String thirdPartyAttributions = PlacePicker.getAttributions(intent);
if (thirdPartyAttributions == null) {
  thirdPartyAttributions = "";
}

Zuordnungen aus einem „PlaceLikelihoodBuffer“ abrufen

Wenn Ihre App Informationen anzeigt, die durch Anfordern des aktuellen Orts des Geräts eingeholt wurden, muss die App Drittanbieterzuordnungen für die abgerufenen Ortsdaten anzeigen.

Die API gibt einen PlaceLikelihoodBuffer mit einer Liste der wahrscheinlichen Orte zurück. Um Zuordnungen aus dem PlaceLikelihoodBuffer abzurufen, rufen Sie PlaceLikelihoodBuffer.getAttributions() auf. Diese Methode gibt eine HTML-Zeichenfolge bzw. null zurück, wenn es keine Attribute zum Anzeigen gibt.

PendingResult<PlaceLikelihoodBuffer> result = Places.PlaceDetectionApi
    .getCurrentPlace(mGoogleApiClient, null);
result.setResultCallback(new ResultCallback<PlaceLikelihoodBuffer>() {
  @Override
  public void onResult(PlaceLikelihoodBuffer likelyPlaces) {
    final CharSequence thirdPartyAttributions =
        likelyPlaces.getAttributions();
    ...
  }
  likelyPlaces.release();
});

Zuordnungen aus einem „PlaceBuffer“ abrufen

Wenn Ihre App Informationen anzeigt, die durch Aufrufen von Ort nach ID abrufen eingeholt wurden, muss die App auch Drittanbieterzuordnungen für die angerufenen Ortsdaten anzeigen.

Die API gibt einen PlaceBuffer mit einer Liste der Orte zurück. Um Zuordnungen aus dem PlaceBuffer abzurufen, rufen Sie PlaceBuffer.getAttributions() auf. Diese Methode gibt eine HTML-Zeichenfolge bzw. null zurück, wenn es keine Attribute zum Anzeigen gibt.

Places.GeoDataApi.getPlaceById(mGoogleApiClient, placeId)
    .setResultCallback(new ResultCallback<PlaceBuffer>() {
  @Override
  public void onResult(PlaceBuffer places) {
    if (places.getStatus().isSuccess()) {
        ...
        final CharSequence thirdPartyAttributions =
            places.getAttributions();
    }
    places.release();
  }
});

Zuordnungen für ein Foto anzeigen

Wenn Ihre App Fotos anzeigt, müssen Sie Zuordnungen für jedes Foto anzeigen, das solche hat. Um Zuordnungen für ein Foto abzurufen, rufen Sie PlacePhotoMetadata.getAttributions() auf. Diese Methode gibt eine HTML-Zeichenfolge bzw. null zurück, wenn es keine Attribute zum Anzeigen gibt.

Places.GeoDataApi.getPlacePhotos(mGoogleApiClient, placeId)
    .setResultCallback(new ResultCallback<PlacePhotoMetadataResult>() {
  @Override
  public void onResult(PlacePhotoMetadataResult photos) {
    if (photos.getStatus().isSuccess()) {
      // Get attribution for the first photo in the list.
      PlacePhotoMetadataBuffer photoResults = photos.getPhotoMetadata();
      if (photoResults.getCount() > 0) {
        PlacePhotoMetadata photo = photoMetadata.get(0);
        CharSequence attribution = photo.getAttributions();
      }
      photoResults.release();
    }
});

Zuordnungen für Inhalte Dritter anzeigen

Zuordnungen zu Drittanbietern enthalten Inhalte im HTML-Format, die Sie dem Benutzer im bereitgestellten Format anzeigen müssen. Links in den HTML-Inhalten müssen beibehalten werden. Es wird empfohlen, dass die App diese Informationen unterhalb der Ortsdetails anzeigt.

Die API generiert Zuordnungen für alle von der App verwendeten Orte. Die Zuordnungen werden per API-Aufruf, nicht per Ort bereitgestellt.

Sie können die Zuordnungen beispielsweise mit TextView anzeigen. Beispiel:

TextView attributionsText = (TextView) findViewById(R.id.attributions);
String thirdPartyAttributions = PlacePicker.getAttributions(intent);
if (thirdPartyAttributions == null) {
  thirdPartyAttributions = "";
}
attributionsText.setText(Html.fromHtml(thirdPartyAttributions));

Beispiel einer Zuordnung für Inhalte Dritter

Listings by <a href="https://www.example.com/">Example Company</a>

Feedback geben zu...

location_on
Google Places API for Android