当前位置:   article > 正文

Android 蓝牙4.0 startScan()方法搜索不到设备

startscan

蓝牙打开之后启动扫描。用2.0

bluetoothAdapter.startDiscovery();这个方法可以发现蓝牙设备。
但是使用低功耗蓝牙的api:

BluetoothLeScanner bluetoothLeScanner = bluetoothAdapter.getBluetoothLeScanner();
bluetoothLeScanner.startScan(scanCallback);
则没有设备返回,扫描不到设备。检查蓝牙状态也是打开的。如果碰到有权限的问题就申请两个位置的权限:

如果还是扫描不到设备。把手机状态栏下拉看看那个位置信息是不是开启的,我遇到的问题就是没有开启。把位置服务

开启就正常了。这个bug也纠结了我好久才发现。

public static boolean isLocationOpen(final Context context){
LocationManager manager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
//gps定位
boolean isGpsProvider = manager.isProviderEnabled(LocationManager.GPS_PROVIDER);
//网络定位
boolean isNetWorkProvider = manager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
return isGpsProvider|| isNetWorkProvider;
}

原文链接:https://blog.csdn.net/m554762631/article/details/86539282

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/483768
推荐阅读
相关标签
  

闽ICP备14008679号