1## 经典蓝牙使用说明文档
2
3​		本文档主要介绍蓝牙专项测试程序的经典蓝牙部分的功能使用说明。
4
5#### 从主界面跳转到经典蓝牙部分
6
7![主界面与Br跳转](主界面与Br跳转1.png)
8
9---
10
11#### 经典蓝牙的主要接口
12
13|      method名称       |         API名称         |              所需参数              |    返回值     | 备注 |
14| :-------------------: | :---------------------: | :--------------------------------: | :-----------: | :--: |
15|        开蓝牙         |     enableBluetooth     |                 ()                 |    boolean    |      |
16|        关蓝牙         |    disableBluetooth     |                 ()                 |    boolean    |      |
17|       获取状态        |        getState         |                 ()                 |    number     |      |
18|   获取当前连接状态    |  getBtConnectionState   |                 ()                 |    string     |      |
19|     设置本地名称      |      setLocalName       |                 ()                 |    string     |      |
20|     获取本地名称      |      getLocalName       |           (name: string)           |    boolean    |      |
21|     设置扫描模式      |  setBluetoothScanMode   | (mode: ScanMode, duration: number) |    boolean    |      |
22|     获取扫描模式      |  getBluetoothScanMode   |                 ()                 |    string     |      |
23|     开始蓝牙发现      | startBluetoothDiscovery |                 ()                 |    boolean    |      |
24|     停止蓝牙发现      | stopBluetoothDiscovery  |                 ()                 |    boolean    |      |
25|       配对设备        |       pairDevice        |         (deviceId: string)         |    boolean    |      |
26|     取消配对设备      |      unpairDevice       |         (deviceId: string          |    boolean    |      |
27|   获取远程设备名称    |      getDeviceName      |         (deviceId: string)         |    string     |      |
28|   获取远程设备类型    |      getDeviceType      |         (deviceId: string)         |    string     |      |
29|     获取配对设备      |   getPairedDeviceIds    |                 ()                 | Array<string> |      |
30| 获取配置文件联系状态1 |   getProfileConnState   |       (profileId: ProfileId)       |    string     |      |
31| 获取配置文件联系状态2 |     getDeviceState      | (profileId:number,deviceId:string) |     Array     |      |
32|     注册状态变化      |     on.stateChange      |  (data: bluetooth.BluetoothState)  |    string     |      |
33|     注册pin码变化     |     on.pinRequired      | (data: bluetooth.PinRequiredParam) |    string     |      |
34|   注册绑定状态变化    |   on.bondStateChange    |  (data: bluetooth.BondStateParam)  |    string     |      |
35
36
37
38#### 功能
39
401. 开/关蓝牙
41
42   **"蓝牙打开"是其他功能测试的前提**
43
44   - 使用指导:点击后,在设备上启动/关闭蓝牙;根据设备的蓝牙情况,显示返回信息。
45
46   - 限制条件:
47     - 若蓝牙未开,点击"开蓝牙",显示信息为"true";
48     - 若蓝牙未开,点击"开蓝牙",发生错误,显示信息为"false"
49     - 若蓝牙已打开,点击"开蓝牙",显示信息为"蓝牙已经使能";
50     - 若蓝牙已打开,点击"关蓝牙",显示结果为"true"
51     - 若蓝牙未打开,点击"关蓝牙",显示结果为"false"
52
53   - 验证方法:可在设备的设置中查看蓝牙的开关情况
54
552. 获取状态
56
57   - 使用指导:点击后,基于蓝牙的开关状态,判断蓝牙当时的状态。
58   - 限制条件:
59     - 若本地蓝牙已关闭,返回值为0,显示信息为"STATE_OFF";
60     - 若本地蓝牙正在打开,返回值为1,显示信息为"STATE_TURNING_ON";
61     - 若本地蓝牙已打开,返回值为2,显示信息为"STATE_ON";
62     - 若本地蓝牙正在关闭,返回值为3,显示信息为"STATE_TURNING_OFF";
63     - 若本地蓝牙正在打开LE模式,返回值为4,显示信息为"STATE_BLE_TURNING_ON";
64     - 若本地蓝牙处于仅LE模式,返回值为5,显示信息为"STATE_BLE_ON";
65     - 若本地蓝牙正在关闭仅LE模式,返回值为6,显示信息为"STATE_BLE_TURNING_OFF"。
66   - 验证方法:可在设备设置中查看蓝牙的当前状态
67
683. 获取当前连接状态
69
70   - 使用指导:点击后,基于设备蓝牙的连接情况,判断蓝牙的连接状态。
71
72   - 限制条件:
73     - 若本地蓝牙未连接,返回值为0,显示信息为"STATE_DISCONNECTED"
74     - 若本地蓝牙正在连接,返回值为1,显示信息为"STATE_CONNECTING"
75     - 若本地蓝牙已连接,返回值为2,显示信息为"STATE_CONNECTED"
76     - 若本地蓝牙正在断开连接,返回值为3,显示信息为"STATE_DISCONNECTING"
77
78   - 验证方法:可在设备设置中查看蓝牙的连接情况
79
804. 设置本地名称---->获取本地名称
81
82   - 使用指导:点击"设置本地名称"后,会弹出弹窗,可以设置本地蓝牙名称,也可以保持默认值不变。点击"获取本地名称",会在信息显示处显示本地当前蓝牙名称。
83
84   - 限制条件:若更改了本地名称,获取时会显示修改后的名称;如果未修改,会直接显示默认名称。
85
86   - 验证方法:可在设备设置中查看本设备蓝牙名称;或是让其他蓝牙设备搜索发现本地设备蓝牙。
87
885. 设置扫描模式---->获取扫描模式
89
90   - 使用指导:点击"设置扫描模式"后,会弹出弹窗,可以选择本地蓝牙扫描模式,设置延迟时间,也可以保持默认选项不变。点击"获取扫描模式",会在信息显示处显示本地当前蓝牙扫描模式和延迟时间。
91
92   - 限制条件:扫描模式共五种(保持默认选项:第四个 即可)
93     - SCAN_MODE_CONNECTABLE(扫描模式可连接)
94     - SCAN_MODE_GENERAL_DISCOVERABLE(扫描模式通用可发现)
95     - SCAN_MODE_LIMITED_DISCOVERABLE(扫描模式受限可发现)
96     - **SCAN_MODE_CONNECTABLE_GENERAL_DISCOVERABLE(扫描模式可连接通用可发现)**
97     - SCAN_MODE_CONNECTABLE_LIMITED_DISCOVERABLE(扫描模式可连接受限可发现)
98
99   - 验证方法:选择不同的扫描模式,用其他蓝牙设备进行连接、发现来验证是否可被连接,发现与受限。
100
1016. 开始蓝牙发现--->停止蓝牙发现
102
103   - 使用指导:点击后,可以开始/停止蓝牙的搜索发现。
104     - 点击"开始蓝牙发现",进行跳转页面,会显示已发现的可配对设备和已配对设备。
105     - 配对列表中会显示设备的名称,MAC地址和配对状态(0:未配对,1:配对中。2:配对成功)。
106     - 点击可配对设备列表中的设备进行配对,配对成功后会显示在已配对设备的列表中。
107     - 点击已配对设备列表中的取消按钮,可以取消该设备的配对。
108
109   - 限制条件:蓝牙必须打开。
110
111   - 验证方法:蓝牙是否可以正常发现与配对;在设备设置中查看已发现与已配对的设备。
112
1137. 配对设备--->取消配对设备
114
115   - 使用指导:
116     - "配对设备":显示当前配对结果,结果为成功或失败。
117     - "取消配对设备":取消当前的配对。
118
119   - 限制条件:只有配对成功后,"配对设备"的返回信息才会显示"成功",才能成功取消配对设备。
120
121   - 验证方法:在设备设置中查看设备配对与否。
122
1238. 获取远程设备名称/类型
124
125   - 使用指导:点击后,可以获取当前配对设备的名称和设备类型,并在对应功能的返回信息处显示。
126
127   - 限制条件:必须要与设备配对成功,才能显示配对设备的名称与类型。
128
129   - 验证方法:在设备设置中查看配对设备的名称和类型。
130
1319. 获取配对设备
132
133   - 使用指导:点击后,可以获取当前配对设备的MAC地址。
134
135   - 限制条件:必须要与设备配对成功,才能显示配对设备的MAC地址。
136
137   - 验证方法:在"开始蓝牙发现"功能中查看配对设备的MAC地址。
138
13910. 获取配置文件连接状态1、获取配置文件连接状态2
140
141   - 使用指导:
142     - 点击"获取配置文件连接状态1",可获取到配置文件的连接状态。
143
144     - 点击"获取配置文件连接状态2",可获取设备的配置文件状态。
145
146     - 调用的方法不同,状态结果选项与"获取当前连接状态"的状态选项一样,同为四个。
147
148   - 限制条件:需要进行连接配对。
149
150   - 验证方法:查看连接profile的状态。
151
15211. 注册状态变化  / 注册pin码变化 / 注册绑定变化
153
154    - 使用指导:都为回调函数,用来监听相关类型事件的变化,并弹窗显示信息。
155
156      > 注册状态变化:
157      >
158      > - 订阅蓝牙状态更改时报告的事件。
159      >
160      > - type为要侦听的Bluetooth状态更改事件的类型。
161      >
162      >
163      > - callback回调用于侦听Bluetooth状态事件。
164      >
165      > 注册pin码变化:
166      >
167      > - 订阅来自远程蓝牙设备的配对请求事件。
168      > - type要侦听的配对请求事件的类型。
169      > - callback回调用于侦听配对请求事件。
170      >
171      > 注册绑定变化:
172      >
173      > - 订阅绑定远程蓝牙设备时报告的事件。
174      > - type为要侦听的绑定状态事件的类型。
175      > - callback回调用于侦听绑定状态事件。
176
177    - 限制条件:需要在相关类型事件发生改变前,开启监听。
178
179    - 验证方法:在事件变化后,查看是否有弹窗信息显示。
180
181