基础库版本 >= 3.81.0
支持。
开始广播本地创建的外围设备。
参数说明
Object object
属性 | 类型 | 默认值 | 必填 | 说明 | 版本 |
advertiseRequest | Object | | 是 | 广播自定义参数 | 3.81.0 |
powerLevel | string | medium | 否 | 广播功率 -- 仅安卓 | 3.81.0 |
success | function | | 否 | 接口调用成功的回调函数 | 3.81.0 |
fail | function | | 否 | 接口调用失败的回调函数 | 3.81.0 |
complete | function | | 否 | 接⼝调⽤结束的回调函数(调⽤成功、失败都会执⾏) | 3.81.0 |
Object advertiseRequest
属性 | 类型 | 默认值 | 必填 | 说明 | 版本 |
connectable | boolean | true | 否 | 当前设备是否可连接,iOS不生效 | |
deviceName | string | | 否 | 广播中 deviceName 字段,默认为空 | |
serviceUuids | Array. <String> | | 否 | 要广播的服务 UUID 列表。使用 16/32 位 UUID 时请参考注意事项。 | |
notify | Array. <Objcet> | | 否 | 广播的制造商信息。仅安卓支持,iOS 因系统限制无法定制。 | |
powerLevel 的合法值
值 | 说明 |
low | 功率低 |
medium | 功率适中 |
high | 功率高 |
Object manufacturerData
属性 | 类型 | 必填 | 说明 | 版本 |
manufacturerId | string | 是 | 制造商ID,0x 开头的十六进制 | |
manufacturerSpecificData | ArrayBuffer | 否 | 制造商信息 | |
示例代码
BLEPeripheralServer.startAdvertising(function (res) {
advertiseRequest,
console.log('startAdvertising:', res)
})
注意
- Android 8.0.9 开始,支持直接使用 16/32/128 位 UUID;
- Android 8.0.9 以下版本只支持 128 位 UUID,使用 16/32 位的 UUID 时需要进行补位(系统会自动识别是否属于预分配区间),可以参考蓝牙指南;
- iOS 必须直接使用 16 位的 UUID,不能补位到 128 位,否则系统组包时仍会按照 128 位传输。iOS 暂不支持 32 位 UUID。
- iOS 同时只能发起一个广播,安卓支持同时发起多个广播。