【Android】蓝牙连接后偶尔或间接性发现不了服务
本帖最后由 采集的小蜜蜂 于 2021-3-25 18:03 编辑onConnectStatechange方法中
检测到state连接成功后,如果想要往设备发送数据,需要使用gatt.discoverService()方法先获取服务,然后进入回调函数
@Override
public void onServicesDiscovered(BluetoothGatt gatt, int status) {
super.onServicesDiscovered(gatt, status);
}
但是有时设备执行这个方法后,通过底层的debug发现返回的真假值是 true,但是就是不进入onServiceDiscoverd这个回调函数。
想问问该怎么解决
找到原因了,是因为在onConectStatechanged连接失败进入133错误代码的判断之后,我直接重新连接的设备,没有清空蓝牙缓存导致 我也遇到过这个问题蓝牙耳机尤甚 最简单 要么换手机,要么换耳机{:301_1005:} 楼主做硬件开发的吗? 楼主是做bluetooth development ??? 是用什么Tool?? bwuaich 发表于 2021-4-6 11:13
楼主是做bluetooth development ??? 是用什么Tool??
不是,我主要是做物联网,APP和蓝牙设备连接的,我写软件,用AndroidStudio,同事写硬件。 采集的小蜜蜂 发表于 2021-4-6 14:11
不是,我主要是做物联网,APP和蓝牙设备连接的,我写软件,用AndroidStudio,同事写硬件。
噢; 明白; 你也很棒啊; 物联网未来很好啊; 不错; 写硬件的话; 是涉及到底层嵌入吗? 要用C?? C#?? bwuaich 发表于 2021-4-6 18:20
噢; 明白; 你也很棒啊; 物联网未来很好啊; 不错; 写硬件的话; 是涉及到底层嵌入吗? 要用C?? C#??
同事们用C写的
页:
[1]