Solución de problemas

Errores

En caso de que ocurra un error, se mostrará un cuerpo de respuesta de error de formato estándar y el código de estado HTTP se establecerá en un estado de error.

La respuesta contiene un objeto con un solo objeto error que tiene las siguientes claves:

  • code: Es el mismo estado HTTP de la respuesta.
  • message: Es una descripción breve del error.
  • status: Es un código de estado que indica la naturaleza del error.

Por ejemplo, si envías un parámetro placeId no válido, se mostrará el siguiente error:

{
  "error": {
    "code": 400,
    "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"",
    "status": "INVALID_ARGUMENT"
  }
}

Los errores posibles incluyen los siguientes:

Código Estado Mensajes Solución de problemas
400 INVALID_ARGUMENT La clave que proporcionaste no es válida. Tu clave de API no es válida o no se incluyó en la solicitud. Asegúrate de haber incluido la clave completa y de haber habilitado la API para ella.
400 INVALID_ARGUMENT El parámetro "\"path\" contiene un valor no válido: 😎" Tu solicitud contenía argumentos no válidos. Las causas más probables de este error son las siguientes:
  • Un problema con tu parámetro path.
    Asegúrate de tener al menos 1 punto y menos de 100 puntos. Cada punto debe ser un par de números separados por una coma, por ejemplo: 48.409114,-123.369158. Los puntos deben estar separados por una barra vertical: '|'.
  • Tu solicitud incluía un placeId no válido.
  • Tu solicitud incluyó placeId y un path. Solo se puede especificar uno de estos parámetros para cada solicitud.

No se mostrará este error si se pasa un valor placeId para una ruta que ya no existe o para un lugar que no es una ruta.

403 PERMISSION_DENIED Se bloqueó la solicitud no registrada. Regístrate mediante Google Developers Console. Se rechazó la solicitud por uno o más de los siguientes motivos:
  • Falta la clave de API o no es válida.
  • No se habilitó la facturación en tu cuenta.
  • Se superó un límite de uso autoimpuesto.
  • La forma de pago proporcionada ya no es válida (por ejemplo, si venció una tarjeta de crédito).

Para usar los productos de Google Maps Platform, debes habilitar la facturación en tu cuenta y todas las solicitudes deben incluir una clave de API válida. Para solucionar este problema, sigue estos pasos:

404 NOT_FOUND Se requiere HTTPS para este servicio. Asegúrate de enviar solicitudes a https://roads.googleapis.com/ y no a http://roads.googleapis.com/.
429 RESOURCE_EXHAUSTED Se limitó la solicitud debido a que se alcanzaron los límites de solicitudes de proyectos. Superaste el límite de solicitudes que configuraste en Google Cloud Platform Console. Por lo general, este límite se establece en solicitudes por día, por 100 segundos y por 100 segundos por usuario. Se debe configurar este límite para evitar que un solo grupo o un pequeño grupo de usuarios agote tu cuota diaria y, al mismo tiempo, permitir un acceso razonable a todos los usuarios. Consulta Limita el uso de API para configurar estos límites.

Retirada exponencial

Cuando las solicitudes fallan, debes asegurarte de reintentar las solicitudes con retirada exponencial. Por ejemplo, si una solicitud falla una vez, vuelve a intentarlo después de un segundo; si falla de nuevo, vuelve a intentarlo después de dos segundos, luego cuatro segundos y así sucesivamente. Esto garantiza que las solicitudes fallidas o las fallas a gran escala no congestionen los servidores de Google, ya que muchos clientes intentan volver a enviar las solicitudes muy rápido.

Preguntas frecuentes sobre la solución de problemas

Problemas de implementación

¿Con qué frecuencia debo tomar muestras de la ubicación de mi vehículo?
Se recomienda usar cada 1 a 10 segundos para obtener resultados de alta calidad en las instrucciones de ajuste a la ruta.
¿Existe un límite para la cantidad de puntos que puedo enviar por consulta?
Sí, una consulta puede tener como máximo 100 puntos.
¿Qué nivel de precisión debo usar para almacenar mis pares de latitud y longitud ajustados?
Para asegurarte de que las rutas ajustadas sigan las rutas en todos los niveles de zoom, incluso en el nivel de zoom máximo, debes almacenar tus pares de latitud y longitud ajustados con 7 decimales de precisión.
¿Puedo usar polilíneas codificadas para mostrar rutas ajustadas?
Las polilíneas codificadas solo se especifican con una precisión de 5 decimales, lo que genera un error de aproximadamente 2 metros. Por lo tanto, las polilíneas codificadas no son adecuadas si deseas que las rutas ajustadas sigan la ruta con altos niveles de zoom.

Problemas comunes

Algunos puntos no se acortan o tengo espacios en las rutas apretadas. ¿Cómo puedo corregir esto?
  • Si tomas el muestreo de tus puntos en intervalos de tiempo, asegúrate de que se hagan a intervalos más cortos (cada 1-10 segundos). Si se utiliza un intervalo más largo (por ejemplo, 60 segundos), es posible que el algoritmo de ajuste a la ruta no pueda determinar las rutas recorridas con suficiente precisión.
  • Si haces clic manualmente en un mapa para crear puntos, es muy sencillo crear rutas con pocos puntos o puntos dispersos que el algoritmo de ajuste no maneje bien. El algoritmo de ajuste funciona mejor para puntos que están cerca. Prueba la demostración de Snap to Roads o usa el Inspector de rutas para probar tus rutas.
¿Por qué mis rutas ajustados están dentadas o están un poco alejadas de la ruta cuando me acerco?
  • ¿Truncas la precisión de los pares de latitud y longitud ajustados antes de mostrarlos? Almacenar pares de latitud y longitud ajustados con una precisión de menos de 7 puntos decimales genera errores de precisión cuando la ruta ajustada se muestra en el mapa.
  • ¿Estás usando polilíneas codificadas? Las polilíneas codificadas truncan los pares de latitud y longitud hasta 5 decimales, lo que genera un error de varios metros, lo que genera líneas dentadas o ligeramente alejadas de la ruta en niveles de zoom altos.

Si no se cumple ninguna de las condiciones anteriores, es posible que los mosaicos del mapa se hayan actualizado recientemente. Esto podría causar que no se sincronicen con el índice de ruta utilizado para el ajuste. Si solo algunas de tus consultas se ven afectadas, es probable que la causa sea la causa. Dado que Google Maps se actualiza con regularidad, esto puede ocurrir ocasionalmente y puede ocurrir con mayor frecuencia si consultas rutas antiguas en un mapa (por ejemplo, rutas que se tomaron hace varias semanas). Para obtener una visualización óptima, debes volver a ajustar las rutas antiguas justo antes de mostrarlas en un mapa, a fin de minimizar las incoherencias entre los mosaicos del mapa y el índice de ruta utilizado para el ajuste.

¿Por qué motivo el límite de velocidad de la ruta X se muestra incorrectamente?
Los límites de velocidad provienen de varias fuentes que varían en cuanto a precisión y cobertura. Si encuentras un patrón, por ejemplo, los límites de velocidad para un tipo de ruta en particular o un área en particular que es siempre incorrecto, sigue estos pasos para informarnos:
  1. Abre Google Maps en tu computadora de escritorio O la app de Google Maps para Android.
  2. Abre el menú lateral izquierdo.
  3. Selecciona Enviar comentarios. Nota: Es posible que debas acceder a tu cuenta.
  4. Selecciona Editar el mapa.
  5. Selecciona el tramo de ruta que deseas editar.
  6. Selecciona Siguiente.
  7. En el campo "Otro", indica que el límite de velocidad es incorrecto para esa ruta.
  8. Selecciona Enviar.
También puedes informar otros problemas aquí (por ejemplo, si la ruta tiene un nombre incorrecto, está trazada incorrectamente, está cerrada o es privada).
¿Por qué mi ruta ajustada corta esquinas en lugar de seguir el camino?
Para corregir este problema, comprueba lo siguiente:
  • Asegúrate de que el parámetro interpolate esté establecido en true.
  • Comprueba que el muestreo de tus datos originales se realice a intervalos suficientemente cercanos (cada 1 a 10 segundos).
¿Por qué se muestran muchos tramos de ruta en la ruta ajustada para una ruta sin cambios en el límite de velocidad?
Cuando el parámetro interpolate se establece en true, la consulta Snap-to-road muestra una polilínea que sigue la ruta alrededor de esquinas, curvas y rotondas. Si las curvas de la ruta se muestran, se muestran varios tramos, incluso si el límite de velocidad no cambia, a fin de crear una polilínea que siga la geometría de la ruta.