Resolver problemas

Veja algumas dicas para solucionar problemas comuns.

Por que o raio de precisão é muito grande?

Se sua resposta de geolocalização tem um valor muito alto no campo de precisão, o serviço pode estar se localizando com base no IP da solicitação, em vez de pontos de Wi-Fi ou torres de celular. Esse tipo de resposta poderá acontecer se o serviço não reconhecer nenhuma torre de celular ou ponto de acesso.

Para confirmar que o serviço não conseguiu localizar geograficamente os pontos de acesso, defina considerIp como falso na solicitação. Se a resposta for 404, você confirmou que os objetos wifiAccessPoints ecellTowers não foram geolocalizados.

Como solucionar um erro de resposta?

Se a solicitação gerar um erro, o sistema retornará um corpo de resposta de erro de formato padrão e definirá o código de status HTTP como um status de erro.

A resposta de erro contém um objeto com um único objeto de erro com as chaves a seguir:

  • code: é o mesmo que o status HTTP da resposta.
  • message: uma breve descrição do erro.
  • errors: uma lista dos erros que ocorreram. Cada erro contém um identificador para o tipo de erro (o motivo) e uma breve descrição (a mensagem).

Por exemplo, o envio de um JSON inválido retorna o seguinte erro:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "parseError",
    "message": "Parse Error",
   }
  ],
  "code": 400,
  "message": "Parse Error"
 }
}

Coletar informações de teste dos dispositivos

Para fazer outros testes, colete informações do seu dispositivo usando os SDKs e as APIs abaixo:

Descrições de erros

Confira a seguir os possíveis erros que você pode encontrar nas descrições.

Motivo Domínio Código de status HTTP Descrição
dailyLimitExceeded usageLimits 403 Você excedeu seu limite diário.
keyInvalid usageLimits 400 Sua chave de API não é válida para a API Geolocation. Verifique se você incluiu a chave inteira e comprou a API ou ativou o faturamento e a API para receber a cota sem custos financeiros.
userRateLimitExceeded usageLimits 403 Você excedeu o limite de solicitações configurado no Console do Google Cloud. Normalmente, esse limite é definido como solicitações por dia, a cada 100 segundos e a cada 100 segundos por usuário. Configure seu limite para evitar que um único ou pequeno grupo de usuários esgote sua cota diária, enquanto ainda permite um acesso razoável a todos os usuários. Consulte Como limitar o uso da API para configurar esses limites.
notFound geolocation 404 A solicitação era válida, mas não retornou resultados.
parseError global 400 O corpo da solicitação não é um JSON válido. Consulte a seção Corpo da solicitação para ver detalhes sobre cada campo.