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 reutilizarlos fácilmente con un diseño basado en datos aplicable a 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 búsqueda de texto 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 con cualquier personalización de ubicación que se haya establecido.
El servicio de Place Autocomplete ofrece una manera conveniente de permitir que los usuarios busquen regiones. Para mostrar resultados dentro de la región definida, configura
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 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.
- Usa la geocodificación inversa para encontrar los IDs de lugar por coordenadas de latitud y longitud, o incluso mostrar los IDs de lugar de todos los componentes de una ubicación específica.
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 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 se usa el servicio de Geocoding y se agregan restricciones de componentes con geocodificación inversa para recuperar todos los componentes de dirección de 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