首先看看自己的设备是否开启了蓝牙功能,如果开启了依旧为空。
解决办法
在 android/app/src/main/AndroidMainfest.xml 添加
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
//在需要使用的组件中,引入PermissionsAndroid,
然后在使用的组件内获取地址查询权限
import {
Text,
View,
PermissionsAndroid,
TouchableOpacity,
} from 'react-native';
<TouchableOpacity
style={styles.button_view}
onPress={this.requestLocationPermission.bind(this)}>
<Text>申请访问地址权限</Text>
</TouchableOpacity>
async requestLocationPermission() {
try {
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
{
//第一次请求拒绝后提示用户你为什么要这个权限
title: '我要地址查询权限',
message: '没权限我不能工作,同意就好了',
},
);
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
console.log('你已获取了地址查询权限');
} else {
console.log('获取地址查询失败');
}
} catch (err) {
console.log(err.toString());
}
}
完整示例代码见