Solução de problemas

Erros

Em caso de erro, um corpo de resposta de erro com 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 que inclui 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: traffic" Sua solicitação continha argumentos inválidos. As causas mais prováveis desse erro são:
  • Um problema com o parâmetro path.
    Verifique se você tem entre 1 e 100 pontos. Cada ponto precisa ser um par de números separados por uma vírgula, como: 48.409114,-123.369158. Os pontos devem ser separados por uma barra vertical: '|'.
  • Sua solicitação incluiu um placeId inválido.
  • Sua solicitação incluiu placeIds e um path. Somente um desses parâmetros pode ser especificado para cada solicitação.

Esse erro não será retornado se um placeId for transmitido para uma via que não existe mais ou para um lugar que não é uma via.

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:
  • A chave de API está ausente ou é inválida.
  • O faturamento não foi ativado em sua conta.
  • Um limite de uso definido pelo próprio usuário foi excedido.
  • A forma de pagamento fornecida não é mais válida (por exemplo, o cartão de crédito expirou).

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 é necessá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. Normalmente, esse limite é definido como solicitações por dia, a cada 100 segundos e 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 que permite um acesso razoável para todos os usuários. Consulte Como limitar o uso da API para configurar esses limites.

Espera exponencial

Quando as solicitações falham, é necessário repetir as solicitações com espera exponencial. Por exemplo, se uma solicitação falhar uma vez, tente de novo após um segundo. Se falhar de novo, tente de novo após dois segundos, depois quatro segundos e assim por diante. Isso garante que solicitações corrompidas ou falhas em larga escala não sobrecarreguem os servidores do Google, já que muitos clientes tentam repetir solicitações muito rapidamente.

Perguntas frequentes sobre solução de problemas

Problemas de implementação

Com que frequência devo coletar amostras do local do meu veículo?
Recomendamos esse tempo de 1 a 10 segundos para resultados de alta qualidade na velocidade com a rua.
Existe um limite para o número de pontos que posso enviar por consulta?
Sim, uma consulta pode ter no máximo 100 pontos.
Que nível de precisão devo usar para armazenar meus pares de latitude/longitude alinhados?
Para garantir que os caminhos ajustados sigam as vias em todos os níveis de zoom, mesmo no nível máximo, armazene os pares de latitude/longitude alinhados com sete casas decimais de precisão.
Posso usar polilinhas codificadas para exibir 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 são adequadas se você quer que os caminhos ajustados sigam a via em níveis altos de zoom.

Problemas comuns

Alguns pontos não estão sendo direcionados, ou há lacunas nos caminhos de ajustes. Como posso corrigir isso?
  • Se você estiver fazendo a amostragem dos pontos em intervalos cronometrados, verifique se a amostragem ocorre em intervalos mais curtos (a cada 1 a 10 segundos). Se um intervalo mais longo for usado (por exemplo, 60 segundos), o algoritmo de direcionamento à estrada poderá não ser capaz de determinar as vias percorridas com precisão suficiente.
  • Se você estiver clicando 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 lida bem. O algoritmo de ajuste funciona melhor para pontos próximos. Faça a demonstração do Snap to Roads ou use o Inspetor de vias para testar os caminhos.
Por que meus caminhos ajustados ficam irregulares ou um pouco longe da estrada quando aumento o zoom?
  • Você está truncando a precisão dos pares de latitude/longitude alinhados antes de exibi-los? O armazenamento de pares de latitude/longitude ajustados com uma precisão menor que sete pontos decimais causa erros de precisão quando o caminho ajustado é exibido no mapa.
  • Você está usando polilinhas codificadas? 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 ligeiramente fora da estrada em altos níveis de zoom.

Se nenhuma das opções acima corresponder, é possível que os blocos do mapa tenham sido atualizados recentemente, fazendo com que fiquem dessincronizados com o índice da via usado para ajuste. Se apenas algumas das suas consultas forem afetadas, essa provavelmente será a causa. Como o Google Maps é atualizado regularmente, isso pode acontecer ocasionalmente e ocorrer com mais frequência se você analisar regularmente caminhos antigos em um mapa, por exemplo, caminhos que foram traçados há várias semanas. Para uma visualização ideal, recorte novamente os caminhos antigos antes de mostrá-los no mapa para minimizar as inconsistências entre os blocos de mapa e o índice de vias usado para ajuste.

O que pode fazer com que o limite de velocidade da via X seja mostrado 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 para um tipo de via específico ou em uma área específica) que esteja consistentemente errado, siga estas etapas para nos informar:
  1. Abra o Google Maps no seu computador desktop OU no app Google Maps para Android.
  2. Abra o menu lateral esquerdo.
  3. Selecione Enviar feedback. Observação: pode ser necessário fazer login.
  4. Selecione Editar o mapa.
  5. Selecione o trecho da via que você quer editar.
  6. Selecione Próxima.
  7. No campo "Outro", indique que o limite de velocidade da via está errado.
  8. Selecione Enviar.
Você também pode informar outros problemas aqui, por exemplo, se a via tem o nome incorreto, está desenhada incorretamente, está fechada ou é particular.
Por que meu caminho encurtado está cortando cantos em vez de seguir a estrada?
Para corrigir esse problema, verifique o seguinte:
  • Verifique se o parâmetro interpolate está definido como true.
  • Verifique se as amostras dos pontos de dados originais são feitas em intervalos próximos o suficiente (a cada 1 a 10 segundos).
Por que estou recebendo muitos trechos de via retornados no caminho alinhado para uma via sem mudanças de limite de velocidade?
Quando o parâmetro interpolate é definido como true, a consulta de alinhamento à via retorna uma polilinha que segue a estrada ao redor de cantos, curvas e rotatórias. Se houver uma curva, vários trechos de via serão retornados, mesmo que o limite de velocidade não seja alterado, para criar uma polilinha que siga de perto a geometria da via.