-

蓝牙是短距离无线通信的一种方式,支持蓝牙的两个设备必须配对后才能通信。HarmonyOS 蓝牙主要分为传统蓝牙和低功耗蓝牙(通常称为 BLE,Bluetooth Low Energy)。传统蓝牙指的是蓝牙版本 3.0 以下的蓝牙,低功耗蓝牙指的是蓝牙版本 4.0 以上的蓝牙。

当前蓝牙的配对方式有两种:蓝牙协议 2.0 以下支持 PIN 码(Personal Identification Number,个人识别码)配对,蓝牙协议 2.1 以上支持简单配对。

传统蓝牙

HarmonyOS 传统蓝牙提供的功能有:

  • 传统蓝牙本机管理:打开和关闭蓝牙、设置和获取本机蓝牙名称、扫描和取消扫描周边蓝牙设备、获取本机蓝牙 profile 对其他设备的连接状态、获取本机蓝牙已配对的蓝牙设备列表。
  • 传统蓝牙远端设备操作:查询远端蓝牙设备名称和 MAC 地址、设备类型和配对状态,以及向远端蓝牙设备发起配对。

BLE

BLE 设备交互时会分为不同的角色:

  • 中心设备和外围设备:中心设备负责扫描外围设备、发现广播。外围设备负责发送广播。
  • GATT(Generic Attribute Profile,通用属性配置文件)服务端与 GATT 客户端:两台设备建立连接后,其中一台作为 GATT 服务端,另一台作为 GATT 客户端。

HarmonyOS 低功耗蓝牙提供的功能有:

  • BLE 扫描和广播:根据指定状态获取外围设备、启动或停止BLE扫描、广播。

约束与限制

调用蓝牙的打开接口需要 ohos.permission.USE_BLUETOOTH 权限,调用蓝牙扫描接口需要ohos.permission.LOCATION权限和ohos.permission.DISCOVER_BLUETOOTH权限。