我正在研究本机应用程序。在那,我需要用户位置。因此,我已经安装了Geolocation库,并且还添加了位置许可请求。
在获得许可后,位置服务将无法启用并且无法检索位置数据。而且,如果我看到设置的位置服务被禁用,即使我已经获得了应用程序权限的允许。
componentDidMount = async () => {
if (Platform.OS === 'android') {
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
{
'title': 'Location Updates',
'message': 'Location Updates access to your location '
}
)
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
console.log("location permission success")
this.getLatitudeLongitude();
} else {
console.log("location permission denied")
alert("Location permission is denied");
this.setState({ errorMessage: 'Location permission is denied'})
}
}
}
getLatitudeLongitude() {
console.log("getLatitudeLongitude called")
alert("getLatitudeLongitude called");
Geolocation.getCurrentPosition((position) => {
console.log('position', position);
const initialPosition = JSON.stringify(position);
this.setState({ initialPosition });
},
(error) => alert(error.message),
{ enableHighAccuracy: true, timeout: 20000, maximumAge: 1000 }
);
this.watchID = Geolocation.watchPosition((position) => {
const lastPosition = JSON.stringify(position);
this.setState({ lastPosition });
});
}
我正在使用“本机”:“ 0.61.2” 版本。
有什么建议吗?