uni-app uni.startBluetoothDevicesDiscovery搜索不到已连接过的设备

发布于 1周前 作者 yuanlaile 来自 Uni-App

uni-app uni.startBluetoothDevicesDiscovery搜索不到已连接过的设备

开发环境 版本号 项目创建方式
Windows win10 HBuilderX

操作步骤:

我目前测试是以前能搜到的设备,现在搜不到了。这个设备以前是连接过手机的。其他设备正常

预期结果:

我目前测试是以前能搜到的设备,现在搜不到了。这个设备以前是连接过手机的。其他设备正常

实际结果:

我目前测试是以前能搜到的设备,现在搜不到了。这个设备以前是连接过手机的。其他设备正常

bug描述:

安卓ble搜索不到设备。看到有人说搜索不到已连接过的设备,目前我就一台设备,测试好像也是这个问题,其他的ble设备都是可以搜到的。同样的代码ios是好的。这个代码以前也是好的。就最近突然发现不行了。也试过先关闭蓝牙适配器和关闭蓝牙连接。再搜索。也是不行。就是之前连接过的搜索不到


6 回复

uni.startBluetoothDevicesDiscovery services这个字段,如果你没有数据,那就不要写这个字段,否则就会出现我这个问题。直接字段删掉就好了。艹


链接上的设备你搜索能搜得到吗 ?

刚试了3.8.4,sdk是3.9.6打爆了之后也不行,我找了7月份打包的apk就可以搜到

在ios手机上开发测试,第一次搜索到指定的蓝牙设备,连接成功后断开;之后重新搜索时,就无法再搜索到之前搜索出来的设备!但是在android手机上就没有这个问题!!!
请问是什么原因?指导下解决方案,谢谢

请问你解决了吗

在使用 uni.startBluetoothDevicesDiscovery 进行蓝牙设备搜索时,如果搜索不到已连接过的设备,可能有以下几种原因和解决方法:

1. 设备未开启蓝牙或未处于可发现模式

  • 原因:蓝牙设备可能未开启蓝牙,或者未处于可发现模式。
  • 解决方法:确保蓝牙设备已开启蓝牙,并且处于可发现模式(通常蓝牙设备会有指示灯闪烁表示处于可发现状态)。

2. 设备不在搜索范围内

  • 原因:蓝牙设备可能超出了搜索范围(通常为10米左右)。
  • 解决方法:将蓝牙设备靠近手机,确保在搜索范围内。

3. 设备已被其他设备连接

  • 原因:如果蓝牙设备已经被其他设备连接,可能不会出现在搜索列表中。
  • 解决方法:断开其他设备的连接,或者将设备重置为可发现模式。

4. uni-app 的权限问题

  • 原因:应用可能没有获取到蓝牙相关的权限。
  • 解决方法:确保在 manifest.json 中正确配置了蓝牙权限,并且在运行时获取了用户的蓝牙权限。
{
  "permission": {
    "scope.userLocation": {
      "desc": "你的位置信息将用于蓝牙设备搜索"
    }
  }
}

在代码中请求权限:

uni.authorize({
  scope: 'scope.userLocation',
  success() {
    uni.startBluetoothDevicesDiscovery({
      success(res) {
        console.log('蓝牙设备搜索成功', res);
      },
      fail(err) {
        console.error('蓝牙设备搜索失败', err);
      }
    });
  },
  fail() {
    console.error('授权失败');
  }
});

5. 设备缓存问题

  • 原因:有时设备的缓存可能导致无法搜索到已连接过的设备。
  • 解决方法:尝试清除蓝牙缓存或重启手机。

6. uni.startBluetoothDevicesDiscovery 参数设置问题

  • 原因uni.startBluetoothDevicesDiscovery 的参数设置可能不正确。
  • 解决方法:检查参数设置,确保 allowDuplicatesKeyinterval 等参数设置合理。
uni.startBluetoothDevicesDiscovery({
  allowDuplicatesKey: false, // 是否允许重复上报同一设备
  interval: 0, // 上报设备的间隔,单位为ms,0表示实时上报
  success(res) {
    console.log('蓝牙设备搜索成功', res);
  },
  fail(err) {
    console.error('蓝牙设备搜索失败', err);
  }
});
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!