Reactnative, geolocation
Salta a la navegació
Salta a la cerca
Contingut
Exemple geolocation
Aquest és l'exemple mínim per tal de què funcioni la geolocalització en el mòbil, amb Reactnative.
Creem la plantilla de la nostra aplicació:
$ expo init geo-example $ cd geo-example
Hem de demanar permisos al nostre dispositius per tal d'accedir a la LOCATION. En el tutorial suposen que estem amb el Android SDK, però nosaltres estem amb l'entorn Expo de desenvolupament.
$ expo install expo-permissions Permission type: LOCATION Packages: expo-location
Es soluciona editant el fitxer app.json (en el directori arrel):
"android": {
"permissions": [
"ACCESS_FINE_LOCATION",
]
En l'app, quan cliquem sobre el text, se'ns demana permís per accedir a la location, i quan diem que sí, es mostra per pantalla.
Ha funcionat, però no tinc clar si és obligatori incloure aquestes funcions:
async function alertIfRemoteNotificationsDisabledAsync() {
const { status } = await Permissions.getAsync(Permissions.NOTIFICATIONS);
if (status !== 'granted') {
alert('Hey! You might want to enable notifications for my app, they are good.');
}
}
async function checkMultiPermissions() {
const { status, expires, permissions } = await Permissions.getAsync(
Permissions.CALENDAR,
Permissions.CONTACTS
);
if (status !== 'granted') {
alert('Hey! You have not enabled selected permissions');
}
}
async function getLocationAsync() {
// permissions returns only for location permissions on iOS and under certain conditions, see Permissions.LOCATION
const { status, permissions } = await Permissions.askAsync(Permissions.LOCATION);
if (status === 'granted') {
return Location.getCurrentPositionAsync({ enableHighAccuracy: true });
} else {
throw new Error('Location permission not granted');
}
}
creat per Joan Quintana Compte, abril 2020