Puedes usar el SDK de Places para iOS y la API de Geocoding con el SDK de Maps para iOS para buscar regiones y obtener más información sobre lugares. El SDK de Places para iOS y la API de Geocoding son alternativas eficaces y estables para obtener IDs de lugar. Si ya usas IDs de lugar, puedes volver a usarlos con el diseño basado en datos para los límites.
Agrega Places y Geocoding a tus apps del SDK de Maps para iOS de las siguientes maneras:
- El SDK de Places para iOS muestra información sobre lugares por medio de solicitudes HTTP.
- La clase CLGeocoder puede geocodificar datos y hacer una geocodificación inversa 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 la API de Places
La Text Search de la API de Places muestra información sobre un conjunto de lugares en función de una cadena; por ejemplo, "pizza en Buenos Aires", "tiendas de zapatos cerca de Santiago" o "Calle principal 123". El servicio responde con una lista de lugares que coinciden con la cadena de texto y cualquier sesgo de ubicación que se haya establecido.
El servicio de Places Autocomplete proporciona una manera conveniente de permitir que los usuarios busquen regiones. Para mostrar resultados dentro de la región definida, establece
locationRestriction
enGMSAutocompleteFilter
.
Cómo obtener detalles del lugar de una región
Los datos de Detalles del lugar de una región también son eficaces. 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
- Obtén el tipo de componente del límite (por ejemplo, localidad).
- 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, "Kirkland, WA, 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, coordenadas de latitud y longitud, o un ID de lugar en coordenadas geográficas y viceversa. Los siguientes usos se combinan bien con los diseños basados en datos para los 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 para las áreas administrativas del 1 al 4, la localidad o el código postal.
- Usa la geocodificación inversa para encontrar IDs de lugares por coordenadas de latitud y longitud, o incluso para mostrar los IDs de lugares de todos los componentes de una ubicación en particular.
En el siguiente ejemplo, se usa una dirección (con codificación de URL) para realizar una solicitud a la API de Geocoding:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&key=YOUR_API_KEY
Puedes usar la geocodificación inversa para encontrar los IDs de lugar. En el siguiente ejemplo, la función del servicio de Geocoding muestra los IDs de lugar de todos los componentes de la dirección en las coordenadas de latitud y longitud especificadas:
https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY
Usa la geocodificación inversa con el filtrado de componentes para obtener el componente de dirección de uno o más de los siguientes tipos en la ubicación especificada:
administrativeArea
country
locality
postalCode
schoolDistrict
En el siguiente ejemplo, se muestra cómo usar el servicio Geocoding y agregar restricciones de componentes con la geocodificación inversa para recuperar todos los componentes de la dirección en la ubicación especificada para el tipo
locality
:https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY