Best practice per gli indirizzi di geocodifica

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

La geocodifica è la procedura di conversione degli indirizzi (come un indirizzo) in coordinate geografiche (latitudine e longitudine) che puoi utilizzare per posizionare gli indicatori su una mappa o posizionare la mappa. L'obiettivo di questo documento è chiarire le considerazioni necessarie per la geocodifica di indirizzi. Descrive quando è ottimale utilizzare l'API Geocoding e quando è utile utilizzare il servizio Places Autocomplete Place.

In generale, utilizza l'API Geocoding quando geocodifica gli indirizzi completi (ad esempio, "48 Pirrama Rd, Pyrmont, NSW, Australia"). Utilizza il servizio Place Autocomplete dell'API Places quando geocodifica gli indirizzi ambigui (incompleti) o per le applicazioni sensibili alla latenza, come quando rispondi all'input utente.

Casi d'uso e suggerimenti relativi alle API

Casi d'uso e suggerimenti relativi alle API
Rispondi in tempo reale all'input utente (include gli indirizzi ambigui, incompleti, non formattati correttamente o con errori ortografici inseriti da un utente) Utilizza il servizio Place Place con completamento API Places per ottenere un ID luogo, quindi l'API Geocoding per geocodificare l'ID luogo in una modalità latlng.
Elaborazione automatica dei sistemi automatici, completa e non ambigua (ad esempio, "48 Pirrama Rd, Pyrmont, NSW, Australia") Utilizzare il servizio web dell'API Geocoding.
Sistemi automatici che elaborano query ambigue (ad esempio indirizzi incompleti, in formato errato o con errori ortografici) I sistemi automatici consigliati utilizzano il servizio web API Geocoding. Tuttavia, i sistemi automatici con un'elevata frequenza di query ambigue, incomplete o con errori ortografici ricavate dall'input dell'utente potrebbero trarre vantaggio dall'aggiunta di un widget interattivo con Completamento automatico per consentire agli utenti di selezionare un risultato ed evitare così un errore di ortografia.
Problemi di latenza che utilizzano l'API Directions o l'API DIST Matrix, con origini, destinazioni o tappe, specificate come stringhe di indirizzo. Riduci la latenza della geocodifica utilizzando il servizio di completamento automatico dei luoghi dell'API Places per ottenere gli ID dei luoghi, quindi passali all'API Directions o all'API DIST Matrix.

Rispondere all'input utente

Le applicazioni che rispondono in tempo reale all'input utente hanno due considerazioni importanti che influiscono sulla scelta dell'API:

  1. L'input dell'utente in genere comporta l'inserimento progressivo di un indirizzo (ad esempio "Via Garibaldi 123"), pertanto poter geocodificare indirizzi incompleti e ambigui è utile in quanto consente all'utente di ottenere un risultato più rapidamente.
  2. Le applicazioni che rispondono all'input utente sono particolarmente sensibili alla latenza.

Queste due considerazioni rendono il servizio di completamento automatico Place nell'API Places ideale per il caso d'uso della risposta all'input utente. Place Autocomplete è progettato per restituire più possibili opzioni e consentire a un utente di sceglierle tra loro. L'API Places può essere limitata alla ricerca solo di codici geografici o di indirizzi, escludendo le attività. Inoltre, la funzione di ricerca di completamento automatico può avere un bias per restituire risultati specifici per una località. L'API Places restituisce un ID luogo che può essere trasmesso al servizio web dell'API Geocoding in modalità completamente disambigua, che restituisce quindi i dettagli completi dell'indirizzo e geocodifica l'indirizzo in latlng. Gli ID luogo possono anche essere passati ad altre API, come l'API Directions e l'API DIST Matrix (vedi sotto).

La geocodifica degli indirizzi nell'API Geocoding ha una latenza molto più elevata e produce anche risultati meno accurati per query incomplete o ambigue, quindi è sconsigliata per le applicazioni che devono rispondere in tempo reale all'input utente.

Scopri di più sul servizio Place Autocomplete per Android, iOS, JavaScript e l' API Places.

Sistemi automatici

Sistemi automatici che elaborano indirizzi postali completi e non ambigui: le query non ambigue, come le stringhe di indirizzi postali complete (ad esempio "48 Pirrama Rd, Pyrmont, NSW, Australia"), sono gestite in modo ottimale dal servizio web dell'API Geocoding. Il backend di geocodifica di indirizzi fornisce una maggiore copertura di indirizzi a livello globale ed è ottimizzato per risultati di alta qualità con questi tipi di query complete e ambigue.

Query ambigue di elaborazione automatica del sistema: le query ambigue sono quelle che contengono indirizzi non correttamente formattati, indirizzi incompleti o errori di ortografia. Per i sistemi automatici, consigliamo di utilizzare il servizio web dell'API Geocoding. Tuttavia, l'API Geocoding non è progettata per gestire query ambigue e può produrre risultati meno accurati o 0 risultati in risposta a query ambigue. Se il tuo sistema automatico elabora un'elevata frequenza di query ambigue derivate dall'input utente, puoi trarre vantaggio dall'aggiunta di un elemento interattivo all'app utilizzando il servizio di completamento automatico Place nell'API Places, in quanto è progettato per restituire più opzioni possibili e consentire a un utente di scegliere tra loro. L'API Places restituisce un ID luogo che può essere trasmesso come località completamente disambigua al servizio web dell'API Geocoding, che restituisce quindi i dettagli completi dell'indirizzo e geocodifica l'indirizzo in latlng. Scopri di più sul servizio Place Autocomplete per Android, iOS, JavaScript e l' API Places.

Riduzione della latenza per l'API Directions e l'API DIST Matrix

Quando origini, destinazioni o tappe sono specificate come stringhe di indirizzo, l'API Directions e l'API DIST Matrix utilizzano lo stesso backend dell'API Geocoding per codificare questi indirizzi prima di calcolare le indicazioni stradali. Ciò aumenta in modo significativo la latenza rispetto alla specifica delle stesse località dei latlng o degli ID luogo.

Se la tua applicazione utilizza l'API Directions o l'API DISTANCE Matrix in una situazione sensibile alla latenza, ad esempio la risposta dell'input utente e le tue origini, le destinazioni o i tappe vengono specificate inizialmente come stringhe di indirizzo, ti consigliamo di ridurre al minimo la latenza utilizzando il servizio di completamento automatico del luogo dell'API Places per convertire le stringhe di indirizzi in ID luogo, quindi passare gli ID luogo all'API Directions o all'API Direction Matrix. Scopri di più sul servizio Place Autocomplete per Android, iOS, JavaScript e l'API Places. Consulta anche un esempio JavaScript di completamento automatico e indicazioni stradali per un luogo.

Conclusione

A seconda del caso d'uso, quando utilizzi la geocodifica, l'uso dell'API Geocoding o il servizio Place Autocomplete in combinazione con l'API Geocoding ti consente di creare applicazioni che offrono agli utenti risultati accurati di geocodifica e una latenza ridotta.

Gestione di errori e nuovi tentativi

Se ricevi risposte UNKNOWN_ERROR, queste sono causate da errori temporanei e possono essere gestite meglio dopo un breve ritardo. Ti consigliamo di utilizzare le librerie client dei servizi web di Google Maps Platform, che includono la logica dei nuovi tentativi e supportano l'autenticazione con piano Premium di Google Maps. Client Java, Client Python, Client Go e Client Node.js per i servizi Google Maps sono librerie client supportate dalla community, disponibili per il download e i contributi su GitHub, dove puoi anche trovare le istruzioni per l'installazione e il codice campione.

Se ricevi un codice di stato OVER_QUERY_LIMIT come risposta, hai superato i limiti di utilizzo per l'API. Ti consigliamo di provare queste strategie di ottimizzazione dell'utilizzo.