react-native mapbox未显示用户位置和注释

时间:2018-05-06 00:06:46

标签: javascript android react-native mapbox mapbox-android

我目前正在使用mapbox https://github.com/mapbox/react-native-mapbox-gl学习使用地图做出反应原生的做法我按照地图显示的内容进行了操作,如果我给它一个lonlat它确实显示我emulator上的某个位置,但问题是annotationshow user location根本没有显示。

有谁知道我可能会缺少什么? 我一直在重建应用程序几次并检查调试没有错误

这是我的简单代码

导出默认类App扩展Component {     data = [       { ID: '' }     ];

render() {
  return (
    <View style={styles.container}>
      <Mapbox.MapView
        showUserLocation={true}
        styleURL={Mapbox.StyleURL.Street}
        zoomLevel={16}
        centerCoordinate={[-123.1118716, 49.2847564]}
        style={styles.container}>
      </Mapbox.MapView>
      <Mapbox.PointAnnotation
        id='1'
        title='nooooooooooooooooooooo'
        coordinate={[-123.1118716, 49.2847560]}
      >
      </Mapbox.PointAnnotation>
    </View>
  );
}

}

1 个答案:

答案 0 :(得分:1)

遇到同样的问题,在Android> = 23上,您必须先请求权限

import { PermissionsAndroid } from 'react-native';
...
componentDidMount() {
{
 PermissionsAndroid.requestMultiple(
            [PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
            PermissionsAndroid.PERMISSIONS.ACCESS_COARSE_LOCATION],
            {
                title: 'Give Location Permission',
            message: 'App needs location permission to find your position.'
        }
    ).then(granted => {
        console.log(granted);
        resolve();
    }).catch(err => {
        console.warn(err);
        reject(err);
    });
}