Veja algumas dicas para solucionar problemas comuns.
Por que o raio de precisão é muito grande?
Se a resposta de geolocalização apresentar um valor muito alto no campo de precisão, o serviço poderá estar fazendo a geolocalização com base no IP da solicitação, não nos pontos de Wi-Fi ou nas torres de celular. Esse tipo de resposta pode acontecer se o serviço não reconhece torres de celular ou pontos de acesso.
Para confirmar que o serviço não conseguiu geolocalizar seus pontos de acesso, defina
considerIp
como falso na solicitação. Se a resposta for 404, você confirmou que não foi possível geolocalizar seus objetos wifiAccessPoints e cellTowers.
Como faço para resolver 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 seguintes chaves:
code
: esse valor é o mesmo que o status HTTP da resposta.message
: uma breve descrição do erro.errors
: uma lista de 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 testes adicionais, é possível coletar informações do seu dispositivo usando os seguintes SDKs e APIs:
Dispositivos Android: acesse o SDK do Places para Android e as APIs Location do Android.
Dispositivos iOS: acesse o SDK do Places para iOS.
Descrições de erros
Confira os possíveis erros com 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 se 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, por 100 segundos e por 100 segundos por usuário. Configure seu limite para evitar que um usuário ou grupo de usuários esgote sua cota diária, mas ainda assim permita um acesso razoável a todos. 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. |