# BLEPeripheralServer.startAdvertising(Object Object)

> 基础库 2.10.3 开始支持，低版本需做[兼容处理](1003706)。

> __以 [Promise 风格](/miniprogram/dev/framework/app-service/api.md#异步-API-返回-Promise) 调用__：不支持
> 
> __小程序插件__：不支持
> 
> __微信 鸿蒙 OS 版__：支持

> 相关文档: [蓝牙介绍](/miniprogram/dev/framework/device/bluetooth.md)

## 功能描述

开始广播本地创建的外围设备。

## 参数

### Object Object


```json
[
  {
    "属性": "advertiseRequest",
    "类型": "Object",
    "默认值": "",
    "必填": "是",
    "说明": "广播自定义参数",
    "子项": [
      {
        "结构属性": "connectable",
        "类型": "Boolean",
        "默认值": "true",
        "必填": "否",
        "说明": "当前设备是否可连接",
        "最低版本": ""
      },
      {
        "结构属性": "deviceName",
        "类型": "String",
        "默认值": "",
        "必填": "否",
        "说明": "广播中 deviceName 字段，默认为空",
        "最低版本": ""
      },
      {
        "结构属性": "serviceUuids",
        "类型": "Array.<String>",
        "默认值": "",
        "必填": "否",
        "说明": "要广播的服务 UUID 列表。使用 16/32 位 UUID 时请参考注意事项。",
        "最低版本": ""
      },
      {
        "结构属性": "manufacturerData",
        "类型": "Array.<Object>",
        "默认值": "",
        "必填": "否",
        "说明": "广播的制造商信息。仅安卓支持，iOS 因系统限制无法定制。",
        "最低版本": "",
        "子项": [
          {
            "结构属性": "manufacturerId",
            "类型": "String",
            "默认值": "",
            "必填": "是",
            "说明": "制造商ID，0x 开头的十六进制"
          },
          {
            "结构属性": "manufacturerSpecificData",
            "类型": "ArrayBuffer",
            "默认值": "",
            "必填": "否",
            "说明": "制造商信息"
          }
        ]
      },
      {
        "结构属性": "beacon",
        "类型": "Object",
        "默认值": "",
        "必填": "否",
        "说明": "以 beacon 设备形式广播的参数。",
        "最低版本": "[2.20.1](1003706)",
        "子项": [
          {
            "结构属性": "uuid",
            "类型": "String",
            "默认值": "",
            "必填": "是",
            "说明": "Beacon 设备广播的 UUID"
          },
          {
            "结构属性": "major",
            "类型": "Number",
            "默认值": "",
            "必填": "是",
            "说明": "Beacon 设备的主 ID"
          },
          {
            "结构属性": "minor",
            "类型": "Number",
            "默认值": "",
            "必填": "是",
            "说明": "Beacon 设备的次 ID"
          },
          {
            "结构属性": "measuredPower",
            "类型": "Number",
            "默认值": "",
            "必填": "否",
            "说明": "用于判断距离设备 1 米时 RSSI 大小的参考值"
          }
        ]
      }
    ]
  },
  {
    "属性": "powerLevel",
    "类型": "String",
    "默认值": "medium",
    "必填": "否",
    "说明": "广播功率",
    "子项": [
      {
        "合法值": "low",
        "说明": "功率低"
      },
      {
        "合法值": "medium",
        "说明": "功率适中"
      },
      {
        "合法值": "high",
        "说明": "功率高"
      }
    ]
  },
  {
    "属性": "success",
    "类型": "function",
    "默认值": "",
    "必填": "否",
    "说明": "接口调用成功的回调函数"
  },
  {
    "属性": "fail",
    "类型": "function",
    "默认值": "",
    "必填": "否",
    "说明": "接口调用失败的回调函数"
  },
  {
    "属性": "complete",
    "类型": "function",
    "默认值": "",
    "必填": "否",
    "说明": "接口调用结束的回调函数（调用成功、失败都会执行）"
  }
]
```

## 注意

- Android 8.0.9 开始，支持直接使用 16/32/128 位 UUID；
- Android 8.0.9 以下版本只支持 128 位 UUID，使用 16/32 位的 UUID 时需要进行补位（系统会自动识别是否属于预分配区间），可以参考[蓝牙指南](/miniprogram/dev/framework/device/ble.md)；
- iOS 必须直接使用 16 位的 UUID，不能补位到 128 位，否则系统组包时仍会按照 128 位传输。iOS 暂不支持 32 位 UUID。
- iOS 同时只能发起一个广播，安卓支持同时发起多个广播。
- 传 beacon 参数时，不能同时传入 deviceName，serviceUuids，manufacturerData 参数。
