【发布时间】:2021-02-08 12:30:25
【问题描述】:
我正在使用react-native-geolocation-service 来获取用户的位置。在 iOS 上,当应用程序在前台时很容易请求位置访问,您只需跳过添加后台位置访问作为一项功能。但是,我不明白您如何在 Android 上删除此权限。我没有ACCESS_BACKGROUND_LOCATION 权限集,我仍然可以在例如“始终允许”选项。我的像素 2。
这是我用来获取用户位置的代码:
const getCurrentPosition = async (onSuccess, onError) => {
if (Platform.OS === 'android') {
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
{
title: 'My title',
message: 'My message',
buttonPositive: 'Continue',
}
);
if (granted !== PermissionsAndroid.RESULTS.GRANTED) {
onError();
return;
}
}
Geolocation.getCurrentPosition(
(result) => {
const position = {
longitude: result.coords.longitude,
latitude: result.coords.latitude,
};
onSuccess(position);
},
(error) => {
onError();
},
{ enableHighAccuracy: true, maximumAge: 10000, timeout: 15000 }
);
};
【问题讨论】:
-
丹尼尔,你解决了这个问题吗?我自己也有同样的问题。
-
很遗憾没有:/
标签: android react-native geolocation