Asistente de Google usa tres formatos diferentes de intents que tu app de navegación puede admitir.
Para lograr la interoperabilidad y la integración de tu app y Asistente de Google, declara los filtros de intents que se detallan en esta página en el manifiesto de tu app.
Para obtener más información sobre los intents, consulta Intent
.
La clase Intent
de la app de navegación de Asistente admite los siguientes intents:
- Intent de navegación
- Intención de búsqueda
- Intent de acción personalizada
Figura 1: Flujo de datos de intents.
Parámetros en los datos de intent
Los datos de intent siguen un formato de URI que contiene parámetros basados en el intent que pasas. Algunos parámetros siempre se proporcionan en los datos. Esto significa que puedes esperar que siempre tengan un valor explícito. Sin embargo, los parámetros opcionales no siempre tienen un valor establecido en los datos. Para obtener más información, consulta Prueba de datos.
Intents sin conexión
Todos los intents que se enumeran en esta página tienen sus variantes sin conexión disponibles.
Para distinguirlos, agrega .offline
a su esquema.
Por ejemplo, el intent de navegación usa el esquema geo.offline
.
Estos filtros de intents en el manifiesto indican la capacidad de la app para admitir estas acciones sin conexión.
Intent de navegación
Usa un intent de navegación para llevar a cabo la solicitud de un usuario de navegar a un destino específico. Este destino puede ser una sola ubicación (dirección) o varias ubicaciones (por ejemplo, cafeterías y gasolineras). Los datos de intent siguen un formato de URI especificado para cada intent.
Formato del intent
La clase Intent
usa el siguiente formato para el intent de la app de navegación:
Categoría: android.intent.category.DEFAULT
Acción:
- Android Auto y SO Android Automotive:
androidx.car.app.action.NAVIGATE
- Otros factores de forma:
android.intent.action.NAVIGATE
Esquema: geo
Ejemplos:
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
Comportamiento sugerido de la app: Comienza la navegación a la ubicación especificada o se le solicita al usuario que elija entre varias opciones.
Filtros de intents del manifiesto
Declara el siguiente formato de intent en el archivo de manifiesto de tu app para que Google Assistant sepa que tu app de navegación puede recibir intents de navegación.
Todos los factores de forma, excepto Android Auto y el SO Android Automotive:
<intent-filter>
<action android:name="android.intent.action.NAVIGATE" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
SO Android Auto y Android Automotive:
<intent-filter>
<action android:name="androidx.car.app.action.NAVIGATE" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
Parámetros proporcionados
Se espera que los siguientes parámetros estén disponibles en los datos del intent de la app de navegación proporcionados.
Búsqueda de ubicación o coordenadas geográficas
Cada consulta de intent de navegación contiene uno o ambos de estos parámetros, según el tipo de datos solicitados:
Consulta de ubicación
Hace referencia a la ubicación a la que el usuario intenta navegar. Usa estos datos para resolver el destino del usuario.
Clave de parámetro:
q
Valor: Es el destino consultado del usuario.Ejemplo:
geo:0,0?q=Golden+Gate+Bridge
Interpretación: El usuario quiere navegar al Puente Golden Gate.Coordenadas geográficas (latitud y longitud)
Se refiere a coordenadas específicas que usa el usuario para la navegación.
Clave de parámetro:
geo:lat,long
Valor: Las coordenadas que consultó el usuario.Ejemplo:
geo:1.1,2.2?mode=w&intent=navigation
Interpretación: El usuario quiere navegar a las coordenadas (1.1, 2.2).
Parámetros opcionales
En esta sección, se describen los parámetros opcionales que se proporcionan en los datos del intent de la app de navegación.
Intent
Define la intención del usuario. Si no se establece este parámetro, el intent del usuario predeterminada se considera navigation
.
Clave de parámetro: intent
Valores posibles:
navigation
[valor predeterminado]: Reemplaza el destino y comienza la navegación. Úsalo para consultas como navegar a x.add_a_stop
: Agrega la parada como el siguiente destino junto con los destinos anteriores. Úsalo para consultas como agregar una parada en x.directions
: Muestra instrucciones sobre cómo llegar a un lugar sin iniciar la navegación. Úsalo para consultas como cómo llegar a x.
Ejemplo: geo:47.61594547836694,-122.20373173098756?q=575+Bellevue+Square,+Bellevue,+WA+98004&intent=add_a_stop
Interpretación: El usuario quiere agregar una parada a Bellevue Square, Bellevue, con las coordenadas actuales [47.6, -122.2].
Evitar
Define los elementos que se deben evitar en la navegación.
Clave de parámetro: avoid
Valores posibles:
f
: Ferriesh
: Autopistast
: peajes
Ejemplo: geo:0,0?q=googleplex&avoid=tf
Interpretación: El usuario quiere navegar a Googleplex evitando peajes y ferries.
Medio de viaje
El modo de viaje representa el método de transporte que el usuario especifica en la consulta.
Clave de parámetro: mode
Valores posibles:
b
: Bicicletad
: viaje en autox
: Taxil
: Vehículo motorizado de dos ruedasr
: Transporte públicow
: Caminar
Ejemplo: geo:0,0?q=Googleplex&mode=r
Interpretación: El usuario quiere navegar a Googleplex en transporte público.
Entrada
Se usa para registrar la fuente de entrada.
Valores posibles: assistant
Ejemplo: geo:47.61594547836694,-122.20373173098756?entry=assistant
Intención de búsqueda
Usa un intent de búsqueda para buscar una consulta y mostrar varios resultados a lo largo de la ruta mientras conduces.
Formato del intent
La clase Intent
usa el siguiente formato para los intents de búsqueda:
Categoría: android.intent.category.DEFAULT
Acción: android.intent.action.VIEW
Esquema: geo
Ejemplo: geo:0,0?q=restaurants+nearby
Comportamiento sugerido de la app: Abre una lista de ubicaciones que se ajusten a la consulta del usuario.
Filtros de intents del manifiesto
Declara el siguiente formato de intent en el archivo de manifiesto de tu app para que Google Assistant sepa que tu app de navegación puede recibir intents de búsqueda:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo" />
</intent-filter>
Parámetros proporcionados
Se espera que los siguientes parámetros estén disponibles en los datos del intent de búsqueda proporcionados.
Consulta de ubicación
Una búsqueda de ubicación es la ubicación que el usuario busca mientras conduce. Esta consulta puede ser imprecisa o estar a lo largo de una ruta de navegación activa.
Clave de parámetro: q
Valor: Es el término de búsqueda del usuario, que puede ser un tipo de ubicación, como cafetería o universidad, pero también puede tener cuantificadores, como -cerca de mí o -con la mejor calificación.
Ejemplo: geo:0,0?q=restaurants+nearby
Interpretación: El usuario quiere buscar restaurantes cercanos.
Intent de acción personalizada
Usa un intent personalizado para acciones personalizadas, como informar accidentes y finalizar la navegación. El parámetro de consulta act
define el tipo de acción principal.
Puedes establecer parámetros adicionales según el tipo de acción.
Formato del intent
La clase Intent
usa el siguiente formato para el intent de acción personalizada:
Categoría: android.intent.category.DEFAULT
Acción: android.intent.action.VIEW
Esquema: geo.action
Ejemplo: geo.action:?act=report&accident_type=major
Filtros de intents del manifiesto
Declara el siguiente formato de intent en el archivo de manifiesto de tu app para informarle a Asistente de Google que tu app de navegación puede recibir intents de acción personalizados.
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="geo.action" />
</intent-filter>
Parámetros proporcionados
Se espera que los siguientes parámetros estén disponibles en los datos del intent de la acción personalizada proporcionados:
Tipo de acción
Define el tipo de acción personalizada que un usuario desea realizar.
Clave de parámetro: act
Ejemplos:
geo.action:?act=report_crash&accident_type=major
Interpretación: El usuario quiere informar un accidente grave.geo.action:?act=mute
Interpretación: El usuario quiere silenciar las instrucciones por voz.geo.action:?act=exit_navigation
Interpretación: El usuario quiere salir de la navegación actual.
Comportamiento sugerido de la app: Realiza la acción solicitada en la app de navegación o muestra un mensaje de acción no admitida.
En la siguiente imagen, se muestra un ejemplo de pares clave-valor en la consulta de respuesta:
Figura 2: Flujo de datos del intent de acción personalizada.
Par clave-valor:
"act": "report_crash"
"road_direction": other_side"
Cada acción personalizada siempre tiene un parámetro act
como clave. En el código de ejemplo anterior, algunas acciones pueden tener pares clave-valor adicionales.
Por ejemplo, act=report_crash
admite estas claves adicionales: accident_type
y road_direction
.
La clave accident_type
puede admitir dos valores, minor
y major
.
Valores posibles
En la tabla, se enumeran los valores posibles que Asistente de Google puede pasar como la acción que el usuario intenta realizar en la app de navegación.
Valor | Descripción | Claves de parámetros opcionales | Valores de parámetros opcionales |
---|---|---|---|
allow_ferries
|
Cambia la preferencia de ruta para permitir transbordadores. | ||
allow_highways
|
Cambia la preferencia de ruta para permitir las autopistas. | ||
allow_tolls
|
Cambia la preferencia de ruta para permitir peajes. | ||
apply_electric_vehicle_connector_filter
|
Solo muestra las ubicaciones de carga de VE que coincidan con el conector del automóvil. | ||
apply_electric_vehicle_fast_charging_filter
|
Solo muestra las ubicaciones de carga de VE que tienen cargadores rápidos. | ||
apply_electric_vehicle_payment_filter
|
Solo muestra las ubicaciones de carga de VE que requieren pago. | ||
avoid_ferries
|
Cambia la preferencia de ruta para evitar transbordadores. | ||
avoid_highways
|
Cambia la preferencia de ruta para evitar las autopistas. | ||
avoid_tolls
|
Cambia la preferencia de ruta para evitar los peajes. | ||
clear_search_results
|
Borra los resultados de la búsqueda en el mapa. | ||
distance_to_destination
|
Muestra la distancia al destino. | ||
distance_to_next_turn
|
Muestra la distancia hasta el siguiente giro. | ||
eta
|
Muestra la hora de llegada estimada al destino. | ||
exit_navigation
|
Salir de la navegación o cancelarla | ||
follow_mode
|
Cambia la vista del mapa al modo de seguimiento. | ||
go_back
|
Regresa a la acción de mapa anterior. | ||
hide_satellite
|
Cambia la configuración del mapa para ocultar la información satelital. | ||
hide_traffic
|
Cambia la configuración del mapa para ocultar la información del tráfico. | ||
mute
|
Silencia las indicaciones por voz. | ||
query_current_road
|
Muestra la ruta actual por la que se encuentra el usuario. | ||
query_destination
|
Muestra cuál es el destino. | ||
query_next_turn
|
Muestra cuál es el próximo turno. | ||
remove_electric_vehicle_connector_filter
|
Se quitó el filtrado de ubicaciones de carga de VE que coinciden con el conector del automóvil. | ||
remove_electric_vehicle_fast_charging_filter
|
Se quitó el filtrado de las ubicaciones de carga de VE que son cargadores rápidos. | ||
remove_electric_vehicle_payment_filter
|
Se quitó el filtrado de las ubicaciones de carga de VE que requieren pago. | ||
report_crash
|
Informar fallas | accident_type
|
minor
|
major
|
|||
road_direction
|
this_side
|
||
other_side
|
|||
report_hazard
|
Informar sobre peligros | 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
|
Informar actividad policial | road_direction
|
this_side
|
other_side
|
|||
report_road_closure
|
Informar rutas cerradas | road_closure_type
|
partial
|
full
|
|||
report_traffic
|
Informa sobre el tráfico. | traffic_type
|
moderate
|
heavy
|
|||
standstill
|
|||
road_direction
|
this_side
|
||
other_side
|
|||
resume_navigation
|
Reanudar la navegación | ||
route_overview
|
Mostrar descripción general de la ruta | ||
show_alternates
|
Mostrar rutas alternativas | ||
show_directions_list
|
Mostrar instrucciones paso a paso | ||
show_satellite
|
Muestra información satelital en el mapa. | ||
show_traffic
|
Mostrar el tráfico en el mapa | ||
time_to_destination
|
Mostrar la hora de llegada estimada al destino | ||
time_to_next_turn
|
Mostrar la hora de llegada estimada al siguiente giro | ||
unmute
|
Activar las indicaciones por voz |