我想获取当前位置它适用于当前React本机版本,但我希望它适用于React本机版本0.55.1
我以这种方式尝试过 而且有效
constructor(props) {
super(props);
this.state = {
latitude: null,
longitude: null,
error:null,
};
}
componentDidMount() {
navigator.geolocation.getCurrentPosition(
(position) => {
console.log("wokeeey");
console.log(position);
this.setState({
latitude: position.coords.latitude,
longitude: position.coords.longitude,
error: null,
});
},
(error) => this.setState({ error: error.message }),
{ enableHighAccuracy: false, timeout: 200000, maximumAge: 1000 },
);
}
然后我用这个打印
<View>
<Text> Longitude:- {this.state.latitude} </Text>
<Text> Latitude:- {this.state.longitude} </Text>
<Text> {this.state.error} </Text>
</View>
但是对于反应本机0.55.1,它不起作用。 请帮我怎么办?
答案 0 :(得分:0)
对于android,您应在android清单文件中添加以下提及的权限
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
不要忘记在设备中启用GPS
您也可以使用此方法获取当前位置
navigator.geolocation.watchPosition(
(position) => {
console.log("wokeeey");
console.log(position);
this.setState({
latitude: position.coords.latitude,
longitude: position.coords.longitude,
error: null,
});
},
(error) => this.setState({ error: error.message }),
{ enableHighAccuracy: false, timeout: 200000, maximumAge: 1000 },
);