Xamarin Essentials

Aprendiendo a usar Maps con Xamarin Essentials

Los mapas son muy 煤tiles en nuestras aplicaciones. 馃挌 El hecho de poder identificar una ubicaci贸n a trav茅s de un Mapa hace que nuestros usuarios tengan una mejor experiencia. Imaginemos los siguientes dos escenarios:

馃摫App A: El usuario tiene una lista de restaurantes y quiere elegir su favorito, cada art铆culo indica su direcci贸n en un Label, pero los items no tienen la opci贸n de abrir el Mapa. 驴Qu茅 pasa si no sabemos c贸mo llegar a esta ubicaci贸n? Indirectamente estaremos provocando que el usuario salga de nuestra App para buscar la direcci贸n en el Mapa.

馃摫App B: Aqui el usuario tiene la misma lista de restaurantes pero al hacer clic en cada elemento tiene la opci贸n de abrir directamente la direcci贸n en el Mapa.

驴Cu谩l elegir铆as? Si elegimos la App B, haremos que nuestros usuarios tengan una mejor experiencia y tambi茅n les ahorraremos tiempo para alcanzar su objetivo final de saber d贸nde encontrar su restaurante favorito.

隆En este post, aprenderemos a usarlos de una manera sencilla gracias a Xamarin Essentials! 馃挌馃挄


隆Empecemos!

Hablemos de la clase Map

La clase de mapa proporcionada por Xamarin Essentials nos permite abrir la aplicaci贸n de mapa instalada en nuestro dispositivo con una ubicaci贸n o un PlaceMark espec铆fico.

Para poder abrir una ubicaci贸n en el mapa necesitamos indicar sus coordenadas, las cuales est谩n compuestas por latitud y longitud. En este post enviaremos coordenadas fijas para la explicaci贸n de nuestro ejemplo pero tenemos diferentes formas de obtener una ubicaci贸n deseada, puedes elegir una de las siguientes seg煤n tus necesidades:

馃搷 Usando la clase Geocoding, proporciona un API para codificar geogr谩ficamente un placemark聽en coordenadas de posici贸n y codificar coordenadas geogr谩ficas inversas en una marca de posici贸n.

馃搷Usando la clase de geolocalizaci贸n puedes recuperar las coordenadas de geolocalizaci贸n actuales del dispositivo.


Lanzamiento de mapas

Para lanzar un mapa debes agregar la clase Map, seguida del m茅todo OpenAsync. Veamos cuales son los parametros:

馃敼Ubicaci贸n:聽Esta es la informaci贸n de latitud, longitud, altitud y hora que informa el dispositivo.

馃敼Placemark:聽Descripci贸n f谩cil de usar de una coordenada geogr谩fica. Contiene informaci贸n como el nombre del lugar, direcci贸n entre otros.

馃敼Latitud y Longitud: Son los datos de los que se compone una coordenada. Ejemplo: Las coordenadas de Disney World son: Latitud: 28.3772 y Longitud: 81.5707.

馃敼MapLaunchOptions:聽Opciones de inicio para abrir un mapa. Dentro de estas opciones se encuentra el nombre y tipo de navegaci贸n del mapa (Veremos este tema m谩s detallado m谩s adelante).

Y ahora, veamos c贸mo hacerlo en c贸digo.

Abriendo un Placemark

Para abrir un Placemark, necesitamos los siguientes datos:

La imagen tiene un atributo ALT vac铆o; su nombre de archivo es Screen-Shot-2021-05-22-at-11.13.20-PM-1024x280.png

Y ahora, veamos c贸mo hacerlo en c贸digo.


Modos de navegaci贸n en los mapas

Tambi茅n podemos calcular una ruta de navegaci贸n a partir de la posici贸n actual, para lograrlo tenemos el NavigatacionMode.

El NavigationMode nos ayuda a reflejar este c谩lculo de distancias en nuestro mapa, haciendo que la ubicaci贸n sea mucho m谩s legible, incluso podemos configurar el tipo de mapa que queramos como Driving (Conduciendo), Walking (Caminando) en Bicycling (Bicicleta) entre otros.

Para hacerlo, solo debes incluir este par谩metro en las MapLaunchOptions como muestro a continuaci贸n:

Veamos algunos tipos de mapas

La imagen tiene un atributo ALT vac铆o; su nombre de archivo es Screen-Shot-2021-06-02-at-9.06.34-PM-1024x707.png

Diferencias entre plataformas

Existen diferentes tipos de navegaci贸n en los mapas, pero cada uno de ellos puede ser compatible o no seg煤n la plataforma.

La imagen tiene un atributo ALT vac铆o; su nombre de archivo es if_android_313085.png

En Android, el NavigationMode admite tres tipos de mapas, que son los siguientes: Bicycling (Bicicleta), Driving (Conduciendo), Walking (Caminando).

鈿 Es importante saber que Android usa el esquema geo: Uri para iniciar la App de mapas en el dispositivo. Esto es compatible con Google Maps, de lo contrario podr铆a pedirle al usuario que seleccione una aplicaci贸n existente que admita este esquema de Uri.

馃毀 Tanto IOS como UWP admiten la Driving (Conduciendo), Transit (Transito), and Walking (Caminando).


隆Espero que este post te haya sido de gran utilidad! 隆Hasta la pr贸xima!馃檵鈥嶁檧锔

Gracias por leer mi art铆culo !! 馃挌馃挄

Art铆culo en ingl茅s: https://askxammy.com/simple-way-to-use-maps-with-xamarin-essentials/

Referencias: https://docs.microsoft.com/en-us/xamarin/essentials/maps?content=xamarin%2Fxamarin-forms&tabs=android?WT.mc_id=DT-MVP-5003353

Tagged , ,

Leave a Reply

Your email address will not be published. Required fields are marked *