我一定是谷歌搜索至少3个小时了,我在互联网上发现的一切都没有帮助。一些常见的建议是删除getCurrentPosition()
函数上的第三个回调,或将highAccuracy
设置为false。使用telnet修复地理位置。我在清单文件中设置了正确的权限,除了Request Timed Out, Code: 3
错误之外我似乎无法收到任何其他内容......
以下是获取位置的代码(我在另一个文件中渲染...
class GeolocationExample extends React.Component {
state = { position: [] };
componentDidMount() {
navigator.geolocation.getCurrentPosition(
(location) => {
console.log(location);
this.setState({position: location});
},
(error) => console.log(error)
);
}
render() {
return (
<View>
<Text>
<Text style={styles.title}>Initial position: </Text>
{this.state.position}
</Text>
</View>
);
}
}
我已经有一段时间了,所以任何帮助都会受到赞赏!
答案 0 :(得分:1)
几天前我遇到了同样的问题。以下是我解决它的方法。
在您的模拟器中,您应该会在底部看到一个选项菜单。点击它。您将看到一个位置选项卡,您可以在其中输入lat和long。每当您在代码中请求位置时,请按右侧的“发送”。发送仅在您请求该位置后发送时才有效。
答案 1 :(得分:0)
我将从围绕Geolocation的react-native文档开始。它们甚至提供了一个如何使用它的完整示例,它应该按原样运行。
除此之外,我还建议您检查是否已在AndroidManifest.xml中设置了正确的权限。确认在添加以下行后重新启动应用程序。
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
您的代码看起来不错,也许它只是权限?