Ecco alcuni suggerimenti per la risoluzione dei problemi più comuni.
Perché il raggio di precisione è molto ampio?
Se la risposta di geolocalizzazione mostra un valore molto elevato nel campo di accuratezza, il servizio potrebbe determinare la posizione in base all'IP della richiesta, anziché ai punti di accesso Wi-Fi o alle torri di telefonia mobile. Questi tipi di risposte possono verificarsi se il servizio non riconosce torri di telefonia mobile o punti di accesso.
Per confermare che il servizio non è riuscito a geolocalizzare i tuoi punti di accesso, imposta
considerIp
su false nella richiesta. Se la risposta è 404, hai confermato che non è stato possibile geolocalizzare gli oggetti wifiAccessPoints e cellTowers.
Come si risolvono i problemi relativi a un errore di risposta?
Se la richiesta genera un errore, il sistema restituisce un corpo della risposta di errore di formato standard e imposta il codice di stato HTTP su uno stato di errore.
La risposta di errore contiene un oggetto con un singolo oggetto errore con le seguenti chiavi:
code
: corrisponde allo stato HTTP della risposta.message
: una breve descrizione dell'errore.errors
: un elenco degli errori che si sono verificati. Ogni errore contiene un identificatore per il tipo di errore (il motivo) e una breve descrizione (il messaggio).
Ad esempio, l'invio di JSON non valido restituisce il seguente errore:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "parseError",
"message": "Parse Error",
}
],
"code": 400,
"message": "Parse Error"
}
}
Raccogliere informazioni sui test dai dispositivi
Per ulteriori test, puoi raccogliere informazioni dal tuo dispositivo utilizzando i seguenti SDK e API:
Dispositivi Android: vai a Places SDK per Android e alle API di geolocalizzazione Android.
Dispositivi iOS: vai a Places SDK per iOS.
Descrizioni degli errori
Di seguito sono riportati i possibili errori che potresti riscontrare nelle descrizioni.
Motivo | Dominio | Codice di stato HTTP | Descrizione |
---|---|---|---|
dailyLimitExceeded |
usageLimits |
403 | Hai superato il limite giornaliero. |
keyInvalid |
usageLimits |
400 | La tua chiave API non è valida per l'API Geolocation. Assicurati di aver incluso l'intera chiave e di aver acquistato l'API o di aver abilitato la fatturazione e attivato l'API per ottenere la quota senza costi. |
userRateLimitExceeded |
usageLimits |
403 | Hai superato il limite di richieste che hai configurato nella console Google Cloud. Questo limite viene in genere impostato come richieste al giorno, richieste ogni 100 secondi e richieste ogni 100 secondi per utente. Devi configurare il limite per impedire a un singolo utente o a un piccolo gruppo di utenti di esaurire la quota giornaliera, consentendo al contempo un accesso ragionevole a tutti gli utenti. Per configurare questi limiti, consulta la sezione Limitazione dell'utilizzo dell'API. |
notFound |
geolocation |
404 | La richiesta è valida, ma non sono stati restituiti risultati. |
parseError |
global |
400 | Il corpo della richiesta non è in formato JSON valido. Per informazioni dettagliate su ciascun campo, consulta la sezione Request Body. |