Google Assistant verwendet drei verschiedene Intent-Formate, die von Ihrer Navigations-App unterstützt werden können.
Sie können Interoperabilität erreichen und Ihre App mit Google Assistant integrieren, indem Sie die auf dieser Seite beschriebenen Intent-Filter im Manifest Ihrer App deklarieren.
Weitere Informationen zu Intents finden Sie unter Intent
.
Die Klasse Intent
der Assistant-Navigations-App unterstützt die folgenden Intents:
- Navigationsabsicht
- Suchabsicht
- Absicht für benutzerdefinierte Aktion
Abbildung 1: Intent-Datenfluss
Parameter in Intent-Daten
Intent-Daten folgen einem URI-Format mit Parametern, die auf der übergebenen Absicht basieren. Einige Parameter sind immer in den Daten enthalten. Sie können also davon ausgehen, dass sie immer einen expliziten Wert haben. Für optionale Parameter ist jedoch nicht immer ein Wert in den Daten festgelegt. Weitere Informationen finden Sie unter Datentest.
Offline-Intents
Für alle auf dieser Seite aufgeführten Intents sind Offlinevarianten verfügbar.
Sie können sie unterscheiden, indem Sie dem Schema .offline
anhängen.
Für den Navigations-Intent wird beispielsweise das geo.offline
-Schema verwendet.
Diese Intent-Filter im Manifest geben an, ob die App diese Aktionen offline unterstützen kann.
Navigationsabsicht
Verwenden Sie einen Navigations-Intent, um die Anfrage eines Nutzers zu erfüllen, zu einer bestimmten Zielseite zu gelangen. Das Ziel kann entweder ein einzelner Standort (Adresse) oder mehrere Standorte (z. B. Cafés und Tankstellen) sein. Intent-Daten folgen einem URI-Format, das für jeden Intent angegeben ist.
Intent-Format
Die Klasse Intent
verwendet das folgende Format für die Navigations-App-Intention:
Kategorie:android.intent.category.DEFAULT
Aktion:
- Android Auto und Android Automotive OS:
androidx.car.app.action.NAVIGATE
- Andere Formfaktoren:
android.intent.action.NAVIGATE
Schema:geo
Beispiele:
geo:0,0?q=Googleplex
geo:0,0?q=1600+Amphitheatre+parkway&mode=b&intent=add_a_stop
geo:0,0?q=coffee+shop&mode=w&intent=navigation
geo:1.1,2.2?q=Starbucks+on+Main+Street&mode=w&intent=navigation
Vorgeschlagenes App-Verhalten:Die Navigation zum angegebenen Ort wird gestartet oder der Nutzer wird aufgefordert, eine von mehreren Optionen auszuwählen.
Manifest Intent-Filter
Deklarieren Sie das folgende Intent-Format in der Manifestdatei Ihrer App, damit Google Assistant weiß, dass Ihre Navigations-App Navigationsintents empfangen kann.
Alle Formfaktoren außer Android Auto und Android Automotive OS:
<intent-filter>
<action android:name="android.intent.action.NAVIGATE" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
Android Auto und Android Automotive OS:
<intent-filter>
<action android:name="androidx.car.app.action.NAVIGATE" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
Angegebene Parameter
Die folgenden Parameter sollten in den bereitgestellten Daten zu Navigations-App-Intents verfügbar sein.
Standortabfrage oder geografische Koordinaten
Jede Suchanfrage mit Navigationsabsicht enthält je nach Art der angeforderten Daten einen oder beide dieser Parameter:
Standortabfrage
Bezieht sich auf den Ort, zu dem der Nutzer navigieren möchte. Verwenden Sie diese Daten, um das Ziel des Nutzers zu ermitteln.
Parameterschlüssel:
q
Wert:Das abgefragte Ziel des Nutzers.Beispiel:
geo:0,0?q=Golden+Gate+Bridge
Interpretation:Der Nutzer möchte zur Golden Gate Bridge gelangen.Geografische Koordinaten (Breiten- und Längengrad)
Bezieht sich auf bestimmte Koordinaten, die der Nutzer für die Navigation verwendet.
Parameterschlüssel:
geo:lat,long
Wert:Die abgefragten Koordinaten des Nutzers.Beispiel:
geo:1.1,2.2?mode=w&intent=navigation
Bedeutung:Der Nutzer möchte zu den Koordinaten (1.1, 2.2) wechseln.
Optionale Parameter
Die optionalen Parameter, die in den Intent-Daten der Navigations-App angegeben werden, werden in diesem Abschnitt beschrieben.
Intent
Definiert die Nutzerabsicht. Wenn dieser Parameter nicht festgelegt ist, wird die Standardnutzerabsicht als navigation
betrachtet.
Parameterschlüssel: intent
Mögliche Werte:
navigation
[Standardwert]: Ersetzt das Ziel und startet die Navigation. Verwenden Sie diese Option für Suchanfragen wie zu X gehen.add_a_stop
: Die Haltestelle wird zusammen mit vorherigen Zielen als nächstes Ziel hinzugefügt. Verwenden Sie diese Option für Suchanfragen wie Haltestelle an X hinzufügen.directions
: Zeigt eine Routenbeschreibung an, ohne die Navigation zu starten. Verwenden Sie diese Option für Suchanfragen wie Wegbeschreibung zu X.
Beispiel:geo:47.61594547836694,-122.20373173098756?q=575+Bellevue+Square,+Bellevue,+WA+98004&intent=add_a_stop
Bedeutung:Der Nutzer möchte der Haltestelle Bellevue Square in Bellevue die aktuellen Koordinaten [47.6, -122.2] hinzufügen.
Vermeiden
Hier werden Dinge definiert, die bei der Navigation vermieden werden sollten.
Parameterschlüssel: avoid
Mögliche Werte:
f
– Fährenh
– Autobahnent
– Mautgebühren
Beispiel:geo:0,0?q=googleplex&avoid=tf
Interpretation:Der Nutzer möchte zu Googleplex fahren und dabei Mautstraßen und Fähren vermeiden.
Mobilitätsform
Der Mobilitätsmodus gibt die in der Suchanfrage angegebene Mobilitätsform an.
Parameterschlüssel: mode
Mögliche Werte:
b
– Fahrradd
– Laufwerkx
– Taxil
– Motorradr
– öffentliche Verkehrsmittelw
– zu Fuß
Beispiel:geo:0,0?q=Googleplex&mode=r
Interpretation:Der Nutzer möchte mit öffentlichen Verkehrsmitteln zum Googleplex fahren.
Eintrag
Wird zum Protokollieren der Eingabequelle verwendet.
Mögliche Werte:assistant
Beispiel:geo:47.61594547836694,-122.20373173098756?entry=assistant
Suchabsicht
Mit einer Suchabsicht können Sie während der Fahrt nach einer Suchanfrage suchen und mehrere Ergebnisse entlang der Route anzeigen lassen.
Intent-Format
Die Intent
-Klasse verwendet das folgende Format für Suchanfragen:
Kategorie:android.intent.category.DEFAULT
Aktion:android.intent.action.VIEW
Schema:geo
Beispiel:geo:0,0?q=restaurants+nearby
Vorgeschlagenes App-Verhalten:Eine Liste der Standorte öffnen, die zur Nutzerabfrage passen.
Manifest Intent-Filter
Deklarieren Sie das folgende Intent-Format in der Manifestdatei Ihrer App, damit Google Assistant weiß, dass Ihre Navigations-App Suchintents empfangen kann:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
Angegebene Parameter
Die folgenden Parameter sollten in den bereitgestellten Daten zur Suchabsicht verfügbar sein.
Standortabfrage
Eine Standortabfrage ist der Ort, nach dem der Nutzer während der Fahrt sucht. Diese Suchanfrage kann ungenau sein oder sich auf eine aktive Navigationsroute beziehen.
Parameterschlüssel:q
Wert:Der Suchbegriff des Nutzers. Dies kann ein Ortstyp wie Café oder Universität sein, aber auch Quantifizierer wie -in meiner Nähe oder -mit der besten Bewertung.
Beispiel:geo:0,0?q=restaurants+nearby
Interpretation:Der Nutzer möchte nach Restaurants in der Nähe suchen.
Absicht für benutzerdefinierte Aktion
Verwenden Sie eine benutzerdefinierte Intent-Aktion für benutzerdefinierte Aktionen wie das Melden von Unfällen und das Beenden der Navigation. Der Hauptaktionstyp wird durch den Abfrageparameter act
definiert.
Je nach Aktionstyp können Sie zusätzliche Parameter festlegen.
Intent-Format
Die Klasse Intent
verwendet das folgende Format für benutzerdefinierte Aktionsabsicht:
Kategorie:android.intent.category.DEFAULT
Aktion:android.intent.action.VIEW
Schema:geo.action
Beispiel:geo.action:?act=report&accident_type=major
Manifest Intent-Filter
Deklarieren Sie das folgende Intent-Format in der Manifestdatei Ihrer App, damit Google Assistant weiß, dass Ihre Navigations-App benutzerdefinierte Aktions-Intents empfangen kann.
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo.action" />
</intent-filter>
Angegebene Parameter
In den bereitgestellten Daten für benutzerdefinierte Aktions-Intents sollten die folgenden Parameter verfügbar sein:
Aktionstyp
Hier wird die Art der benutzerdefinierten Aktion definiert, die ein Nutzer ausführen möchte.
Parameterschlüssel:act
Beispiele:
geo.action:?act=report_crash&accident_type=major
Interpretation: Der Nutzer möchte einen schweren Unfall melden.geo.action:?act=mute
Interpretation:Der Nutzer möchte die Sprachanweisungen stummschalten.geo.action:?act=exit_navigation
Interpretation:Der Nutzer möchte die aktuelle Navigation verlassen.
Vorgeschlagenes App-Verhalten:Führen Sie die angeforderte Aktion in der Navigations-App aus oder zeigen Sie eine Meldung zu nicht unterstützten Aktionen an.
Die folgende Abbildung zeigt ein Beispiel für Schlüssel/Wert-Paare in der Antwortabfrage:
Abbildung 2: Datenfluss für benutzerdefinierte Aktionsabsicht
Schlüssel/Wert-Paar:
"act": "report_crash"
"road_direction": other_side"
Jede benutzerdefinierte Aktion hat immer einen act
-Parameter als Schlüssel. Im obigen Beispielcode können einige Aktionen zusätzliche Schlüssel/Wert-Paare haben.
act=report_crash
unterstützt beispielsweise die folgenden zusätzlichen Tasten: accident_type
und road_direction
.
Der Schlüssel accident_type
kann zwei Werte unterstützen: minor
und major
.
Mögliche Werte
In der Tabelle sind mögliche Werte aufgeführt, die Google Assistant als Aktion übergeben kann, die der Nutzer in der Navigations-App ausführen möchte.
Wert | Beschreibung | Optionale Parameterschlüssel | Optionale Parameterwerte |
---|---|---|---|
allow_ferries
|
Ändern Sie die Routeneinstellung, um Fähren zuzulassen. | ||
allow_highways
|
Ändern Sie die Routeneinstellung, um Autobahnen zuzulassen. | ||
allow_tolls
|
Ändern Sie die Routeneinstellung, um Mautgebühren zuzulassen. | ||
apply_electric_vehicle_connector_filter
|
Nur Ladestationen für Elektrofahrzeuge anzeigen, die mit dem Anschlussstecker des Autos übereinstimmen. | ||
apply_electric_vehicle_fast_charging_filter
|
Nur Ladestationen für Elektrofahrzeuge anzeigen, die Schnellladestationen sind. | ||
apply_electric_vehicle_payment_filter
|
Nur Ladestationen für Elektrofahrzeuge anzeigen, für die eine Zahlung erforderlich ist. | ||
avoid_ferries
|
Ändern Sie die Routeneinstellung, um Fähren zu vermeiden. | ||
avoid_highways
|
Ändern Sie die Routeneinstellung, um Autobahnen zu vermeiden. | ||
avoid_tolls
|
Ändern Sie die Routeneinstellung, um Mautstraßen zu vermeiden. | ||
clear_search_results
|
Suchergebnisse auf der Karte löschen | ||
distance_to_destination
|
Entfernung zum Ziel anzeigen | ||
distance_to_next_turn
|
Entfernung zur nächsten Abbiegung anzeigen | ||
eta
|
Die voraussichtliche Ankunftszeit am Ziel anzeigen. | ||
exit_navigation
|
Beenden oder abbrechen Sie die Navigation. | ||
follow_mode
|
Ändern Sie die Kartenansicht in den „Folgemodus“. | ||
go_back
|
Zur vorherigen Kartenaktion zurückkehren | ||
hide_satellite
|
Ändern Sie die Karteneinstellung, um Satelliteninformationen auszublenden. | ||
hide_traffic
|
Ändern Sie die Karteneinstellung, um Verkehrsinformationen auszublenden. | ||
mute
|
Sprachführung stummschalten | ||
query_current_road
|
Die Straße anzeigen, auf der sich der Nutzer gerade befindet. | ||
query_destination
|
Zeigen Sie, was das Ziel ist. | ||
query_next_turn
|
Die nächste Abbiegung anzeigen | ||
remove_electric_vehicle_connector_filter
|
Entfernen Sie die Filterung für Ladestationen für Elektrofahrzeuge, die mit dem Anschlussstecker des Autos übereinstimmen. | ||
remove_electric_vehicle_fast_charging_filter
|
Die Filterung für Ladestationen für Elektrofahrzeuge, die Schnellladestationen sind, wurde entfernt. | ||
remove_electric_vehicle_payment_filter
|
Entfernen Sie die Filterung für Ladestationen für Elektrofahrzeuge, für die eine Zahlung erforderlich ist. | ||
report_crash
|
Melden Sie Abstürze. | accident_type
|
minor
|
major
|
|||
road_direction
|
this_side
|
||
other_side
|
|||
report_hazard
|
Gefahren melden | hazard_type
|
animal
|
broken_traffic_light
|
|||
construction
|
|||
flooding
|
|||
fog
|
|||
hail
|
|||
ice
|
|||
missing_sign
|
|||
object_on_road
|
|||
pothole
|
|||
roadkill
|
|||
snow
|
|||
vehicle
|
|||
weather
|
|||
road_direction
|
this_side
|
||
other_side
|
|||
location_on_road
|
on_road
|
||
on_shoulder
|
|||
report_police
|
Polizeieinsätze melden | road_direction
|
this_side
|
other_side
|
|||
report_road_closure
|
Melden Sie Straßensperrungen. | road_closure_type
|
partial
|
full
|
|||
report_traffic
|
Melden Sie Staus. | traffic_type
|
moderate
|
heavy
|
|||
standstill
|
|||
road_direction
|
this_side
|
||
other_side
|
|||
resume_navigation
|
Fortsetzen der Navigation | ||
route_overview
|
Routenübersicht anzeigen | ||
show_alternates
|
Alternative Routen anzeigen | ||
show_directions_list
|
Detaillierte Routenführung anzeigen | ||
show_satellite
|
Satelliteninformationen auf der Karte anzeigen | ||
show_traffic
|
Verkehrslage auf der Karte anzeigen | ||
time_to_destination
|
Die voraussichtliche Ankunftszeit am Ziel anzeigen. | ||
time_to_next_turn
|
Die geschätzte Zeit bis zur nächsten Abbiegung anzeigen. | ||
unmute
|
Heben Sie die Stummschaltung der Sprachführung auf. |