如何使用React-Native

时间:2018-01-31 19:14:01

标签: react-native location maps geocoder

我使用mapbox在我的应用中显示地图,但我需要使用地址显示位置,所以我使用地理编码器转换坐标中的地址,但是我得到的这些坐标是错误的,当在地图中打印这些时,地图显示我的其他地方,在Android中也不算太糟糕,但在IOS很糟糕,有时候地图会给我看一个位于城市另一边的地方。我已经尝试使用我知道正确的坐标,地图显示它们很好,所以问题就是地理编码器。

我尝试使用谷歌地图API,但写这个地址的表格很奇怪,我不明白

我可以使用哪些lib但获得准确的坐标?

1 个答案:

答案 0 :(得分:0)

您可以使用Geocoder获取坐标,例如

this.watchId = navigator.geolocation.watchPosition(
                (position) => {
                    this.setState({
                        latitude: position.coords.latitude,
                        longitude: position.coords.longitude,
                        error: null,
                    });
                },

此函数将返回坐标。 如果您获得坐标,则可以致电google API服务以获取街道的完整地址。

fetch('https://maps.googleapis.com/maps/api/geocode/json?address=' + lat + ',' + long + '&key=' + 'API_KEY')
        .then((response) => response.json())
            .then((responseJson) => {
            alert('error')
            alert('ADDRESS GEOCODE is BACK!! => ' + JSON.stringify(responseJson));
})