Utilizzare il servizio Places e l'API Geocoding con gli stili basati sui dati per i confini

Seleziona la piattaforma: Android iOS JavaScript

Puoi utilizzare il servizio Places e l'API Geocoding con Maps SDK for Android per cercare regioni e ottenere maggiori informazioni sui luoghi. Il servizio Places e l'API Geocoding sono alternative potenti e stabili per ottenere gli ID luogo. Se utilizzi già gli ID luogo, puoi riutilizzarli con lo stile basato sui dati per i confini.

Aggiungi il servizio Places e la geocodifica alle tue app per Android Maps SDK for Android nei seguenti modi:

  • Places SDK for Android è una libreria Android contenente metodi per restituire informazioni sui luoghi.
  • L'API Places restituisce informazioni sui luoghi utilizzando richieste HTTP.
  • La classe Geocoder può eseguire la geocodifica e la geocodifica inversa in modo dinamico in base all'input dell'utente.
  • L'API Geocoding consente di geocodificare indirizzi statici e noti.

Utilizza il servizio Places

Utilizza Ricerca testuale (New) per trovare un ID luogo

Puoi utilizzare l'API REST Ricerca testuale (nuova) nell'API Places per ottenere un ID luogo che includa i dati della regione specificando places.id nella maschera di campo. L'utilizzo di Ricerca testuale (New) per richiedere solo gli ID luogo non comporta alcun addebito. Scopri di più.

Ad esempio, per ottenere l'ID luogo di Trinidad, CA, puoi effettuare la seguente chiamata API:

curl -X POST -d '{
  "textQuery" : "Trinidad, CA"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.id' \
'https://places.googleapis.com/v1/places:searchText'

Utilizza Place Autocomplete per trovare le regioni

Il servizio Place Autocomplete in Places SDK for Android offre un modo pratico per consentire agli utenti di cercare regioni. Per configurare il servizio Place Autocomplete in modo che restituisca solo le regioni, utilizza AutocompleteSupportFragment.setTypesFilter(List) per impostare il filtro del tipo su PlaceTypes.REGIONS.

Ottieni i Place Details per una regione

Il servizio Place Details in Places SDK for Android restituisce i dati di una regione che possono essere molto utili. Ad esempio, puoi:

  • Cerca gli ID luogo dei confini in base ai nomi dei luoghi.
  • Ottieni l'area visibile per eseguire lo zoom su un confine.
  • Recupera il tipo di elemento per il confine (ad esempio locality).
  • Ottieni l'indirizzo formattato, che si risolve in "Nome luogo, stato, paese" nella regione degli Stati Uniti (ad esempio, "Ottumwa, IA, USA").
  • Ottenere altri dati utili, come le foto.

Utilizza l'API Geocoding

L'API Geocoding consente di convertire un indirizzo in coordinate di latitudine e longitudine e in un ID luogo oppure di convertire coordinate di latitudine e longitudine o un ID luogo in un indirizzo. I seguenti utilizzi si combinano bene con gli stili basati sui dati per i confini:

  • Utilizza il servizio Geocoding per ottenere l'area visibile di una regione.
  • Applica il filtro dei componenti alla chiamata di geocodifica per ottenere gli ID luogo per le aree amministrative 1-4, la località o il codice postale.
  • Utilizza la geocodifica inversa per trovare gli ID luogo in base alle coordinate di latitudine e longitudine o anche per restituire gli ID luogo per tutti i componenti in una determinata località.

L'esempio seguente utilizza un indirizzo (con escape URL) per inviare una richiesta all'API Geocoding:

https://maps.googleapis.com/maps/api/geocode/json?address=1600%20Amphitheatre%20Pkwy%20Mountain%20View%20CA&key=YOUR_API_KEY

Puoi utilizzare la geocodifica inversa per trovare gli ID luogo. La seguente funzione di esempio del servizio di geocodifica restituisce gli ID luogo per tutti i componenti dell'indirizzo alle coordinate di latitudine e longitudine specificate:

https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&key=YOUR_API_KEY

Utilizza la geocodifica inversa con il filtro dei componenti per ottenere il componente dell'indirizzo per uno o più dei seguenti tipi nella località specificata:

  • administrativeArea
  • country
  • locality
  • postalCode

La funzione di esempio successiva mostra l'utilizzo del servizio di geocodifica, aggiungendo limitazioni dei componenti con la geocodifica inversa per ottenere tutti i componenti dell'indirizzo nella località specificata solo per il tipo locality:

https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY