Obteniendo una dirección a partir de una longitude y latitude en React Native y Expo | Pedro Lara

Código, Libros y Podcast

Obteniendo una dirección a partir de una longitude y latitude en React Native y Expo | Pedro Lara

No hay comentarios
Pedro Lara
08-11-2021


En días pasados compartí un articulo que explica como podemos obtener una dirección a partir de una longitude y una latitude en React Native, es básicamente el procedimiento que utilizan aplicaciones de transporte como uber, DIDI o Indrive, etc. El artículo al que hago referencia mostraba como hacer esto con la función Geocoder de React Native. 

Sin embargo, en esta ocasión veremos como podemos hacer lo mismo pero con  Location de Expo y el método AdressWithCoordenate. Quiero mostrar como hacerlo con esta función porque soy consciente que es mucho más fácil crear una aplicación de React Native con Expo. De hecho, lo más probable es que la mayoría de los desarrolladores que implementan mapas en sus aplicaciones de React Native lo hagan con la función Location de Expo. De modo que si tienes implementado el uso de mapas en tu aplicación de React Native y Expo con Location no tendrás que importar nada más, y además vas a escribir muy poco código.

Para este ejemplo he creado un función llamada AdressWithCoordenate. A esta función le paso un objeto llamado coordinate, el cual contiene tanto la latitude como la longitude.

Lo primero que debemos hacer es asegurarnos de tener importado Location en el lugar que vamos a implementar esta funcionalidad:

import * as Location from 'expo-location'

Luego creamos una función para obtener los datos de la dirección:


export const AdressWithCoordonate = async (coordinate) => {
try {
let result = await Location.reverseGeocodeAsync({
latitude : coordinate.latitude,
longitude : coordinate.longitude
});
return result[0];
} catch (e) {
//console.log(e);
}
};


Luego , llamamos la función reverseGeocodeAsync de Location. Esta función nos devuelve un array, que en su posición 0 contiene un objeto con los detalles de la ubicación. veamos:

Array [

  Object {

    "city": "Santo Domingo",

    "country": "República Dominicana",

    "district": null,

    "isoCountryCode": "DO",

    "name": "2",

    "postalCode": "11201",

    "region": "Santo Domingo",

    "street": "Calle Respaldo Neptuno",

    "subregion": "Santo Domingo Norte",

    "timezone": null,

  },

]





Como se puede ver, esta función nos devuelve los principales datos de la ubicación.

Hasta la próxima.

No hay comentarios :

Publicar un comentario