Erros
No caso de um erro, um corpo de resposta de erro de formato padrão será retornado e o código de status HTTP será definido como um status de erro.
A resposta contém um objeto com um único objeto error
com as seguintes chaves:
code
: é o mesmo que o status HTTP da resposta.message
: uma breve descrição do erro.status
: um código de status que indica a natureza do erro.
Por exemplo, o envio de um parâmetro placeId
inválido retornará o seguinte erro:
{ "error": { "code": 400, "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"", "status": "INVALID_ARGUMENT" } }
Possíveis erros incluem:
Código | Status | A mensagem | Solução de problemas |
---|---|---|---|
400 | INVALID_ARGUMENT |
A chave fornecida é inválida. | Sua chave de API não é válida ou não foi incluída na solicitação. Verifique se você incluiu a chave inteira e se ativou a API para ela. |
400 | INVALID_ARGUMENT |
O parâmetro "\"path\" contém um valor inválido: StreetView" | Sua solicitação contém argumentos inválidos. As causas mais prováveis desse erro são:
Esse erro não será retornado se um |
403 | PERMISSION_DENIED |
A solicitação não registrada foi bloqueada. Inscreva-se usando o Google Developers Console. | A solicitação foi negada por um ou mais dos seguintes motivos:
Para usar os produtos da Plataforma Google Maps, o faturamento precisa estar ativado na sua conta, e todas as solicitações precisam incluir uma chave de API válida. Para corrigir isso, siga estas etapas:
|
404 | NOT_FOUND |
O HTTPS é obrigatório para este serviço. | Verifique se você está enviando solicitações para https://roads.googleapis.com/ , e não para http://roads.googleapis.com/ . |
429 | RESOURCE_EXHAUSTED |
A solicitação foi limitada porque os limites de solicitações do projeto foram atingidos. | Você excedeu o limite de solicitações configurado no Console do Google Cloud Platform. Esse limite normalmente é definido como solicitações por dia, solicitações a cada 100 segundos e solicitações a cada 100 segundos por usuário. Esse limite precisa ser configurado para evitar que um único ou pequeno grupo de usuários esgote sua cota diária, ao mesmo tempo em que permite um acesso razoável a todos os usuários. Consulte Como limitar o uso da API para configurar esses limites. |
Espera exponencial
Quando as solicitações falham, é necessário garantir que elas sejam repetidas com espera exponencial. Por exemplo, se uma solicitação falhar uma vez, tente novamente após um segundo. Se falhar novamente, tente novamente após dois segundos, depois quatro segundos e assim por diante. Isso garante que solicitações inválidas ou falhas gerais não sobrecarreguem os servidores do Google, já que muitos clientes tentam repetir as solicitações muito rapidamente.
Perguntas frequentes sobre solução de problemas
Problemas de implementação
- Com que frequência devo coletar a localização do meu veículo?
- A cada 1 a 10 segundos, é recomendável usar resultados rápidos de alta qualidade.
- Há um limite no número de pontos que posso enviar por consulta?
- Sim, uma consulta pode ter no máximo 100 pontos.
- Qual nível de precisão preciso usar para armazenar meus pares de latitude/longitude ajustados?
- Para garantir que os caminhos direcionados sigam as vias em todos os níveis de zoom, mesmo no nível máximo, você precisa armazenar seus pares de latitude/longitude ajustados em sete casas decimais de precisão.
- Posso usar polilinhas codificadas para exibir os caminhos direcionados?
- As polilinhas codificadas são especificadas apenas com uma precisão de cinco casas decimais, o que resulta em um erro de aproximadamente dois metros. Portanto, as polilinhas codificadas não serão adequadas se você quiser que os caminhos direcionados sigam a estrada em níveis altos de zoom.
Problemas comuns
- Alguns pontos não estão sendo ajustados ou há lacunas nos caminhos direcionados. Como posso corrigir isso?
-
- Se você estiver fazendo a amostragem dos pontos em intervalos programados, faça isso com intervalos mais curtos (a cada 1 a 10 segundos). Se um intervalo mais longo for usado (por exemplo, 60 segundos), o algoritmo "Snap-to-road" não conseguirá determinar as vias percorridas com precisão suficiente.
- Se você clicar manualmente em um mapa para criar pontos, será muito fácil criar caminhos com poucos pontos ou pontos esparsos que o algoritmo de ajuste não consegue processar. O algoritmo de ajuste funciona melhor para pontos que estão próximos. Teste a demonstração do Snap to Roads ou use o inspetor de vias para testar os caminhos.
- Por que meus caminhos ajustados estão irregulares ou um pouco fora da estrada quando eu aumento o zoom?
-
- Você está truncando a precisão dos pares de latitude/longitude ajustados antes de exibi-los? Armazenar pares de latitude/longitude ajustados com uma precisão de menos de sete casas decimais causa erros de precisão quando o caminho ajustado é exibido no mapa.
- Você está usando polilinhas codificadas? As polilinhas codificadas truncam pares de latitude/longitude para cinco casas decimais, o que introduz um erro de vários metros, resultando em linhas irregulares ou um pouco fora da estrada em níveis altos de zoom.
Se nenhuma das opções acima for o caso, os blocos do mapa podem ter sido atualizados recentemente, fazendo com que eles fiquem dessincronizados com o índice de vias usado para ajuste. Se apenas algumas de suas consultas forem afetadas, isso provavelmente será a causa. Como o Google Maps é atualizado regularmente, isso pode acontecer ocasionalmente e ocorrer com mais frequência se você verificar regularmente caminhos antigos em um mapa (por exemplo, caminhos que foram tirados há várias semanas). Para uma visualização ideal, ajuste novamente os caminhos antigos antes de exibi-los em um mapa, a fim de minimizar as inconsistências entre os blocos do mapa e o índice de estradas usado para o ajuste.
- O que pode fazer com que o limite de velocidade da estrada X seja exibido incorretamente?
- Os limites de velocidade vêm de várias fontes que variam em precisão e cobertura.
Se você encontrar um padrão, por exemplo, limites de velocidade de um determinado tipo de via ou que uma área específica seja consistentemente incorreta, siga estas etapas para nos informar:
- Abra o Google Maps no computador OU o app Google Maps para Android.
- Abra o menu do lado esquerdo.
- Selecione Enviar feedback. Observação: pode ser solicitado que você faça login.
- Selecione Editar o mapa.
- Selecione o trecho que você quer editar.
- Selecione Próxima.
- No campo "Outro", indique que o limite de velocidade está errado para essa estrada.
- Selecione Enviar.
- Por que meu caminho percorrido está encurtado em vez de seguir a estrada?
-
Para corrigir esse problema, verifique o seguinte:
- Verifique se o parâmetro
interpolate
está definido comotrue
. - Verifique se a amostragem dos pontos de dados originais é realizada em intervalos próximos o suficiente (a cada 1 a 10 segundos).
- Verifique se o parâmetro
- Por que estou recebendo muitos trechos de via retornados no caminho ajustado de uma estrada sem alterações no limite de velocidade?
- Quando o parâmetro
interpolate
é definido comotrue
, a consulta de ajuste à via retorna uma polilinha que segue a estrada nos cantos, curvas e rotatórias. Se as curvas forem curvas, vários segmentos serão retornados, mesmo que o limite de velocidade não seja alterado, para criar uma polilinha que acompanha a geometria da estrada.