Solución de problemas

Errores

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

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

  • code: Es el mismo que el estado HTTP de la respuesta.
  • message: Es una descripción breve del error.
  • status: 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 Mensaje 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 esa clave.
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:
  • Hay 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, como: 48.409114,-123.369158. Los puntos deben estar separados por una barra vertical “|”.
  • Tu solicitud incluía un placeId no válido.
  • Tu solicitud incluía 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 placeId para una ruta que ya no existe o para un lugar que no es una calle.

403 PERMISSION_DENIED Se bloqueó una 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 porque 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, cada 100 segundos y solicitudes cada 100 segundos por usuario. Este límite se debe configurar para evitar que un solo grupo o un grupo pequeño de usuarios agote tu cuota diaria y, al mismo tiempo, permitir un acceso razonable a todos los usuarios. Consulta Cómo limitar el uso de la 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 nuevamente, reinténtalo 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 intentar 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 que el proceso dure entre 1 y 10 segundos para obtener resultados de alta calidad que se ajusten a la ruta.
¿Existe un límite para la cantidad de puntos que puedo enviar por consulta?
Sí. Una consulta puede tener 100 puntos como máximo.
¿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 máximo, debes almacenar los pares de latitud y longitud ajustados en 7 decimales de precisión.
¿Puedo usar polilíneas codificadas para mostrar trazados ajustados?
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 quieres que las rutas ajustadas sigan la ruta en niveles de zoom altos.

Problemas habituales

Algunos puntos no se ajustan o tengo espacios en las rutas apretadas. ¿Cómo puedo corregirlo?
  • Si muestres tus puntos en intervalos de tiempo, asegúrate de que se muestreen en intervalos más cortos (cada 1 a 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 fácil 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 muy cerca entre sí. Prueba la demostración de Snap to Roads o usa el Inspector de rutas para probar tus rutas.
¿Por qué mis rutas ajustadas están dentadas o ligeramente alejadas de la ruta cuando me acerco?
  • ¿Tratan la precisión de los pares de latitud y longitud ajustados antes de mostrarlos? Almacenar los 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, lo que provocará que no estén sincronizados con el índice de ruta utilizado para el ajuste. Si solo algunas de tus consultas se ven afectadas, es probable que esto sea la causa. Dado que Google Maps se actualiza con frecuencia, 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 rutas utilizado para el ajuste.

¿Por qué motivo no se muestra correctamente el límite de velocidad de la ruta X?
Los límites de velocidad provienen de varias fuentes que varían en 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 se te solicite acceder.
  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 la ruta?
Para corregir este problema, verifica lo siguiente:
  • Asegúrate de que el parámetro interpolate esté establecido en true.
  • Comprueba que los datos originales se muestrean en intervalos lo 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 de forma precisa.