React Native 地理位置在离线模式下工作吗?我正在我的设备和geolocation.watchPosition上进行测试,但是当我切换到飞行模式时,我遇到了位置错误。我打开了我的谷歌地图应用程序,可以看到位置仍在跟踪(在飞行模式下(。如何在本机响应中获取地理位置以在离线模式下工作?如果不可能,还有什么选择?
注意:我正在IOS上进行测试,但正在寻找一种同时适用于Android和IOS的解决方案。
谢谢。
我已经尝试过了我工作,但并非总是如此即使您没有连接到互联网,这也取决于您的信号这也取决于您的设备来接收信号就我而言,当我连接到互联网时,我正在使用华硕Zenfone 6进行测试,它以良好的准确性运行良好,但是当我没有连接到互联网时,有时它可以工作,但准确性真的很差在其他情况下,当我连接到互联网时,我正在使用三星S7进行测试,它运行良好,准确性非常好,但是当我没有连接到互联网时,有时它可以工作(工作最多/比华硕Zenfone 6更多(,但准确性不好
希望回答您的问题,如果有人对如何在没有互联网的情况下修复错误的准确性提出建议,请发表评论
- 是的,您可以在离线模式下使用 通过使用此代码,它可以在离线模式下工作 非常正确
- 不要忘记在清单文件中授予位置权限
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
class GeoLoc extends React.Component{
constructor(props){
super(props);
this.state = {
latitude: null,
longitude: null,
error: null,
};
}
componentDidMount(){
navigator.geolocation.getCurrentPosition( (position)=>{
//const ipos = JSON.stringify(Position);
this.setState({
latitude: position.coords.latitude,
longitude: position.coords.longitude,
error: null,
});
},
(error) => this.setState({ error: error.message }),
{ enableHighAccuracy: true, timeout: 20000, maximumAge: 1000 }
);
}
render(){
return(
<View>
<Text>Latitude: {this.state.latitude}</Text>
<Text>Longitude: {this.state.longitude}</Text>
<Text> {this.state.error} </Text>
</View>
)
}
}