1.广播(Advertising)
BLE广播(Advertising)是一种用于设备之间的发现和连接的机制。通过广播,BLE设备可以以一种无连接的方式向周围的设备发送信息,以便其他设备能够发现它们并建立连接。
BLE广播的主要特点和原则如下:
- 无连接广播:BLE广播是一种无连接的通信方式,不需要建立实际的BLE连接。设备可以以广播包(Advertising Packet)的形式发送信息,而无需事先知道周围设备的存在。
- 广播包(Advertising Packet):广播包是一种特殊的数据包,用于在无连接的情况下传输数据。它包含了设备的标识符、服务信息、特征值等数据,以便其他设备能够识别和发现它。
- 广播频率和间隔:BLE设备以一定的广播频率和间隔发送广播包。广播频率决定了广播包发送的速度,而广播间隔则决定了广播包之间的时间间隔。
- 广播模式:BLE广播支持不同的广播模式,包括可连接模式(Connectable)、非可连接模式(Non-connectable)和可被扫描模式(Scannable)。可连接模式允许其他设备通过建立连接与广播设备进行通信,非可连接模式只用于广播信息,不接受连接请求,可被扫描模式允许其他设备扫描到广播设备。
- 广播数据的内容:广播数据可以包含多种信息,例如设备的名称、服务UUID、厂商自定义数据等。这些信息帮助其他设备识别和区分不同的BLE设备。
- 低功耗设计:BLE广播采用了一系列的优化措施,以减少功耗并延长设备的电池寿命。例如,设备可以选择适当的广播频率和间隔,以平衡广播的效果和功耗消耗。
通过BLE广播,设备可以宣布自身的存在、提供基本的信息和服务,以便其他设备发现和与之进行进一步的通信。广播是BLE通信的第一步,在建立连接之前,它允许设备之间进行初步的交互和识别。
在Android中,可以使用BluetoothLeScanner类来扫描和识别BLE设备。通过BluetoothGatt类进行BLE设备连接。
2.Service(服务)
服务(Service)是一种逻辑单元,用于提供BLE设备的功能和操作。每个BLE设备可以包含一个或多个服务,而每个服务又可以包含一个或多个特征值(Characteristic)。
BLE服务由以下属性组成:
- UUID(通用唯一识别码):每个服务都有一个UUID来唯一标识。UUID可以是标准的16位或128位