Cómo usar el servicio Places y la API de Geocoding con un diseño basado en datos aplicable a límites

Selecciona la plataforma: Android iOS JavaScript

Puedes usar el servicio Places y la la API de Geocoding con el SDK de Maps para Android para buscar regiones obtener más información sobre los lugares. El servicio Places y la API de Geocoding son alternativas eficaces y estables para obtener los IDs de lugar. Si ya usas IDs de lugar, puedes reutilizarlos con diseño basado en datos aplicable a límites.

Agrega el servicio Places y Geocoding a tu SDK de Maps para las apps para Android de las siguientes maneras:

  • SDK de Places para Android es una biblioteca de Android que contiene métodos para devolver información sobre lugares.
  • La API de Places muestra información sobre lugares por medio de solicitudes HTTP.
  • Clase Geocoder pueden geocodificar datos y realizar geocódigos inversos de forma dinámica a partir de la entrada del usuario.
  • La API de Geocoding te permite geocodificar direcciones conocidas y estáticas.

Cómo usar el servicio Places

Cómo usar Text Search (nueva) para encontrar un ID de lugar

Puedes usar Text Search (nuevo). La API de REST en la API de Places para obtener un ID de lugar que incluya la región especificando places.id en la máscara de campo. El uso de la Text Search (nueva) para solicitar IDs de lugar solo genera sin cargo. Obtén más información.

Por ejemplo, para obtener el ID de lugar de Trinidad, California, puedes hacer lo siguiente: Llamada a la 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'

Cómo usar Place Autocomplete para encontrar regiones

Place Autocomplete en el SDK de Places para Android proporciona una manera conveniente de permitir tus usuarios buscan regiones. Para configurar el servicio Place Autocomplete, solo devolver regiones, usar AutocompleteSupportFragment.setTypesFilter(List) para establecer el filtro de tipo en PlaceTypes.REGIONS.

Cómo obtener detalles del lugar de una región

La página de Place Details servicio en el SDK de Places para Android muestra que los datos de una región se pueden bastante útil. Por ejemplo, puedes hacer lo siguiente:

  • Buscar IDs de lugar de límite según los nombres de lugares
  • Obtener el viewport para aplicar zoom a un límite
  • Obtener el tipo de función del límite (por ejemplo, locality)
  • Obtener la dirección con formato, que se resuelve como "Nombre del lugar, estado, país" en la región de Estados Unidos (por ejemplo, “Ottumwa, IA, EE.UU.”).
  • Obtener otros datos útiles, como fotos

Cómo usar la API de Geocoding

La API de Geocoding te permite convertir una dirección en coordenadas de latitud y longitud y un ID de lugar, o coordenadas de latitud y longitud o un ID de lugar en una dirección. Los siguientes usos son compatibles con el diseño basado en datos aplicable a límites:

  • Usa Geocoding para obtener el viewport de una región.
  • Aplica el filtrado de componentes a tu llamada a Geocoding para obtener los IDs de lugar de las áreas administrativas 1-4, la localidad o el código postal.
  • Cómo usar la geocodificación inversa para encontrar IDs de lugar por latitud y longitud coordenadas o incluso mostrar los IDs de lugar de todos los componentes de una ubicación.

En el siguiente ejemplo, se usa una dirección (con escape de URL) para realizar una solicitud a la API de Geocoding:

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

Puedes usar la geocodificación inversa. para buscar IDs de lugar. El siguiente ejemplo de Geocoding la función de servicio devuelve los IDs de lugar de todos los componentes de la dirección en la coordenadas de latitud y longitud especificadas:

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

Cómo usar la geocodificación inversa con el filtrado de componentes para obtener el componente de la dirección para uno o más de los siguientes tipos en la ubicación especificada:

  • administrativeArea
  • country
  • locality
  • postalCode

En la siguiente función de ejemplo, se muestra cómo se usa el servicio de Geocoding y se agregan restricciones de componentes con geocodificación inversa para obtener todos los componentes de dirección de la ubicación especificada solo para el tipo locality:

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