Ecco alcuni suggerimenti per risolvere i problemi più comuni.
Perché il raggio di precisione è molto ampio?
Se la risposta di geolocalizzazione mostra un valore molto elevato nel campo di precisione, il servizio potrebbe geolocalizzare in base all'IP della richiesta, anziché ai punti Wi-Fi o alle torri cellulari. Questo tipo di risposte può verificarsi se il servizio non riconosce nessuna torre cellulare o punto di accesso.
Per confermare che il servizio non è riuscito a geolocalizzare i tuoi punti di accesso, imposta
considerIp su false nella tua richiesta. Se la risposta è 404, hai
confermato che gli oggetti wifiAccessPoints e cellTowers non sono stati geolocalizzati.
Come faccio a risolvere un errore di risposta?
Se la richiesta genera un errore, il sistema restituisce un corpo della risposta di errore in 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 di errore con le seguenti chiavi:
code: è uguale 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 un 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 for Android e API Android Location.
Dispositivi iOS: vai a Places SDK for iOS.
Descrizioni degli errori
Di seguito sono riportati i possibili errori che potresti riscontrare, con le relative descrizioni.
| Motivo | Dominio | Codice di stato HTTP | Descrizione |
|---|---|---|---|
dailyLimitExceeded |
usageLimits |
403 | Hai superato il tuo limite giornaliero. |
keyInvalid |
usageLimits |
400 | La chiave API non è valida per l'API Geolocation. Assicurati di includere 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 comunque un accesso ragionevole a tutti gli utenti. Consulta Limitazione dell'utilizzo dell'API per configurare questi limiti. |
notFound |
geolocation |
404 | La richiesta era valida, ma non è stato restituito alcun risultato. |
parseError |
global |
400 | Il corpo della richiesta non è un JSON valido. Per i dettagli su ogni campo, consulta la sezione Corpo della richiesta. |