1. 蓝牙的两个广播Receiver: 蓝牙状态改变和搜索到设备是通过广播结束的;
2. BluetoothAdapter.startDiscovery是可以同时发现经典蓝牙和ble的,startLeScan()方法也仅能够发现低功耗蓝牙从设备;
3.BluetoothAdapter.startDiscovery在大多数手机上是可以同时发现经典蓝牙和Ble的,但是startDiscovery的回调无法返回Ble
的广播,所以无法通过广播识别设备,且startDiscovery扫描Ble的效率比StartLeScan低很多。所以在实际应用中,
还是StartDiscovery和StartLeScan分开扫,前者扫传统蓝牙,后者扫低功耗蓝牙。
注意:当两种蓝牙设备被某设备(包括当前的设备)配对/绑定后,可能不会再被扫描到。
4. Android5.0和蓝牙4.0以上可以使用ble蓝牙,
5. 经典蓝牙:打电话放音乐。3.0版本以下的蓝牙,都称为“经典蓝牙”。功耗高、传输数据量大、传输距离只有10米。
低功耗蓝牙:就是BLE,通常说的蓝牙4.0(及以上版本)。低功耗,数据量小,距离50米左右。
双模蓝牙: 同时支持经典蓝牙音频和低功耗蓝牙,又要声音又要数据的
6. 在连接设备之前要停止搜索蓝牙 ,停止搜索一般需要一定的时间来完成,最好调用停止搜索函数之后加以100ms的延时,
保证系统能够完全停止搜索蓝牙设备。停止搜索之后启动连接过程;
7. 有时候刚开始扫描还正常,过段时间扫描不到设备?
原因:
出现这个问题的很多是Andr
蓝牙认知
最新推荐文章于 2024-05-08 22:05:38 发布
本文介绍了蓝牙的广播Receiver,如蓝牙状态改变和搜索设备的接收。讲解了Android中`BluetoothAdapter`的`startDiscovery`与`startLeScan()`方法的区别,强调在实际应用中应分开扫描经典蓝牙和低功耗蓝牙。还提到了Android 5.0以上版本支持BLE,并讨论了不同蓝牙类型的特点。此外,文中指出在连接设备前应停止搜索,并处理Android 7.0以上版本的扫描限制问题。最后提醒,已扫描设备的蓝牙名称在修改后,不重新扫描不会更新,且BLE连接可能不需要配对但无法搜索广播名称。
摘要由CSDN通过智能技术生成