当应用程序在本机后台时如何更新服务中的纬度和经度
How to Update latitude and longitude in service when app is background in react native
我尝试每 15 分钟更新一次服务器中的位置以响应本机。那么,我该怎么做...
我正在使用 react-native-maps
地图 api
componentDidMount() {
navigator.geolocation.getCurrentPosition(
position => {
var lat = parseFloat(position.coords.latitude);
var long = parseFloat(position.coords.longitude);
var initialRegion = {
latitude: lat,
longitude: long,
latitudeDelta: LATITUDE_DELTA,
longitudeDelta: LONGITUDEDELTA
};
this.setState({ intialposition: initialRegion });
},
error => {
console.error(error);
},
{ enableHighAccuracy: true, timeout: 20000, maximumAge: 1000 }
);
this.watchID = navigator.geolocation.watchPosition(position => {
var lat = parseFloat(position.coords.latitude);
var long = parseFloat(position.coords.longitude);
var LastRegion = {
latitude: lat,
longitude: long,
latitudeDelta: LATITUDE_DELTA,
longitudeDelta: LONGITUDEDELTA
};
this.setState({ intialposition: LastRegion });
});
}
componentWillUnmount() {
navigator.geolocation.clearWatch(this.watchID);
}
通过这段代码你可以获取用户的位置并显示它,你可以自己改变持续时间
我为同样的问题苦恼了两天,你必须考虑以下几点。
1:如果你是原生Android(使用Java),你一定对后台服务的概念很熟悉,遗憾的是,目前在react-native中还不支持.
2:如果你想完成你的任务,你必须像我一样做我的意思是使用授权图书馆。
3:经过大量谷歌搜索后,我使用了 this library,我认为你需要使用它。
4:最后,这个库在 android 中不是免费用于商业用途的,所以你必须为它们付费,它是如此简单和强大。
我尝试每 15 分钟更新一次服务器中的位置以响应本机。那么,我该怎么做...
我正在使用 react-native-maps
地图 api
componentDidMount() {
navigator.geolocation.getCurrentPosition(
position => {
var lat = parseFloat(position.coords.latitude);
var long = parseFloat(position.coords.longitude);
var initialRegion = {
latitude: lat,
longitude: long,
latitudeDelta: LATITUDE_DELTA,
longitudeDelta: LONGITUDEDELTA
};
this.setState({ intialposition: initialRegion });
},
error => {
console.error(error);
},
{ enableHighAccuracy: true, timeout: 20000, maximumAge: 1000 }
);
this.watchID = navigator.geolocation.watchPosition(position => {
var lat = parseFloat(position.coords.latitude);
var long = parseFloat(position.coords.longitude);
var LastRegion = {
latitude: lat,
longitude: long,
latitudeDelta: LATITUDE_DELTA,
longitudeDelta: LONGITUDEDELTA
};
this.setState({ intialposition: LastRegion });
});
}
componentWillUnmount() {
navigator.geolocation.clearWatch(this.watchID);
}
通过这段代码你可以获取用户的位置并显示它,你可以自己改变持续时间
我为同样的问题苦恼了两天,你必须考虑以下几点。
1:如果你是原生Android(使用Java),你一定对后台服务的概念很熟悉,遗憾的是,目前在react-native中还不支持.
2:如果你想完成你的任务,你必须像我一样做我的意思是使用授权图书馆。
3:经过大量谷歌搜索后,我使用了 this library,我认为你需要使用它。
4:最后,这个库在 android 中不是免费用于商业用途的,所以你必须为它们付费,它是如此简单和强大。