1## SPP测试使用说明文档
2
3​		本文档主要介绍蓝牙专项测试程序的Spp部分的功能使用说明。
4
5### 从主界面跳转到SPP蓝牙部分
6
7SPP测试分为SPPClient测试和SPPServer测试
8
9![主界面与SPP跳转](主界面与SPP跳转.png)
10
11### SPPClient
12
13选择SPP_Client测试,进行SPP客户端的测试![SPP与SPPClient跳转1](SPP与SPPClient跳转1.png)
14
15#### SPPClient的主要接口
16
17|         method名称          |       API名称        |                           所需参数                           | 返回值  | 备注 |
18| :-------------------------: | :------------------: | :----------------------------------------------------------: | :-----: | :--: |
19|           开蓝牙            |    enablBluetooth    |                              ()                              | boolean |      |
20|           关蓝牙            |   disableBluetooth   |                              ()                              | boolean |      |
21|       设置SPP扫描模式       | setBluetoothScanMode |              (mode: ScanMode, duration: number)              | boolean |      |
22|          获取状态           |       getState       |                              ()                              | number  |      |
23|        获取扫描模式         | getBluetoothScanMode |                              ()                              | string  |      |
24|      获取当前连接状态       | getBtConnectionState |                              ()                              | string  |      |
25|  SPP客户端链接(安全模式)  |      sppConnect      | (device: string, option: SppOption, callback: AsyncCallback<number>) |  void   |      |
26| SPP客户端连接(非安全模式) |      sppConnect      | (device: string, option: SppOption, callback: AsyncCallback<number>) |  void   |      |
27|          配对设备           |      pairDevice      |                      (deviceId: string)                      | boolean |      |
28|        SPP客户端写入        |       sppWrite       |          (clientSocket: number, data: ArrayBuffer)           | boolean |      |
29|      SPP客户端读取打开      |      on.sppRead      | (type: "sppRead", clientSocket: number, callback: Callback<ArrayBuffer>) |  void   |      |
30|      SPP客户端读取关闭      |     off.sppRead      | (type: "sppRead", clientSocket: number, callback?: Callback<ArrayBuffer>) |  void   |      |
31|        SPP客户端关闭        | sppCloseClientSocket |                       (socket: number)                       |  void   |      |
32
33#### SPPClient测试功能
34
351. 开/关蓝牙
36
37   - 同"Br功能界面使用说明文档"中的"开/关蓝牙"功能。
38
392. 设置SPP扫描模式
40
41   - 同"Br功能界面使用说明文档"中的"设置扫描模式"功能。
42
433. 获取状态
44
45   - 同"Br功能界面使用说明文档"中的"获取状态"功能。
46
474. 获取扫描模式
48
49   - 同"Br功能界面使用说明文档"中的"获取扫描模式"功能。
50
515. 获取当前连接状态
52
53   - 同"Br功能界面使用说明文档"中的"获取当前连接状态"功能。
54
556. SPP客户端连接(安全)
56
57   - 使用指导:
58
59     > 通过套接字连接到远程设备。
60     >
61     > device要连接的远程设备的地址。
62     >
63     > option表示连接参数{@link SppOption}。
64     >
65     > callback回调用于返回客户端套接字ID。
66
67   - 限制条件:需要在相关类型事件发生改变前,开启监听。
68
69   - 验证方法:在事件变化后,查看是否有弹窗信息显示。
70
717. SPP客户端连接(非安全)
72
73   - 与"SPP客户端连接(安全)"的区别是 "secure: false"
74
758. 配对设备
76
77   - 同"Br功能界面使用说明文档"中的"配对设备"功能。
78
799. SPP客户端写入
80
81   - 使用指导 :
82
83     > - 通过套接字写入数据。
84     >
85     > - clientSocket指示客户端套接字ID,sppAccept或sppConnect返回。
86     > - data指示要写入的数据。
87     > - return如果数据写入成功,则返回true;否则返回false。
88
89   - 限制条件:SPPServer存在。
90
91   - 验证方法:查看显示信息。
92
9310. SPP客户端读取打开/关闭
94
95    - 使用指导:为回调函数,用来监听相关类型事件的变化,并弹窗显示信息。
96
97      > 订阅从套接字读取数据时报告的事件。
98      >
99      > type为要侦听的spp读取事件的类型。
100      >
101      > callback回调用于侦听spp读取事件。
102
103    - 限制条件:需要在相关类型事件发生改变前,开启监听。
104
105    - 验证方法:在事件变化后,查看是否有弹窗信息显示。
106
10712. SPP客户端关闭
108
109    - 使用指导:禁用spp客户端套接字并释放相关资源。
110    - 限制条件:SPPClient未打开。
111    - 验证方法:无法搜索到本设备的Spp客户端。
112
113### SPPServer
114
115
116![SPP与SPPServer跳转1](SPP与SPPServer跳转1.png)
117
118#### SPPServer的主要接口
119
120|         method名称          |       API名称        |                           所需参数                           |         返回值         | 备注 |
121| :-------------------------: | :------------------: | :----------------------------------------------------------: | :--------------------: | ---- |
122|           开蓝牙            |   enableBluetooth    |                              ()                              |        boolean         |      |
123|           关蓝牙            |   disableBluetooth   |                              ()                              |        boolean         |      |
124|        设置扫描模式         | setBluetoothScanMode |              (mode: ScanMode, duration: number)              |        boolean         |      |
125|          获取状态           |       getState       |                              ()                              |     BluetoothState     |      |
126|        获取扫描模式         | getBluetoothScanMode |                              ()                              |        ScanMode        |      |
127|      获取当前连接状态       | getBtConnectionState |                              ()                              | ProfileConnectionState |      |
128|  SPP服务器创建(安全模式)  |      sppListen       | (name: string, option: SppOption, callback: AsyncCallback<number>) |          void          |      |
129| SPP服务器创建(非安全模式) |      sppListen       | (name: string, option: SppOption, callback: AsyncCallback<number>) |          void          |      |
130|        注册pin码变化        |    on.pinRequired    | (type: "pinRequired", callback: Callback<PinRequiredParam>)  |          void          |      |
131|        SPP服务器写入        |       sppWrite       |          (clientSocket: number, data: ArrayBuffer)           |        boolean         |      |
132|        SPP服务器接受        |      sppAccept       |   (serverSocket: number, callback: AsyncCallback<number>)    |          void          |      |
133|      SPP服务器读取打开      |      on.sppRead      | (type: "sppRead", clientSocket: number, callback: Callback<ArrayBuffer>) |          void          |      |
134|      SPP服务器读取关闭      |     off.sppRead      | (type: "sppRead", clientSocket: number, callback?: Callback<ArrayBuffer>): void |          void          |      |
135|        SPP服务器关闭        | sppCloseServerSocket |                      (socket: number):                       |          void          |      |
136|        SPP客户端关闭        | sppCloseClientSocket |                      (socket: number):                       |          void          |      |
137
138#### SPPServer测试功能
139
1401. 开/关蓝牙
141
142   - 同"Br功能界面使用说明文档"中的"开/关蓝牙"功能。
143
1442. 设置SPP扫描模式
145
146   - 同"Br功能界面使用说明文档"中的"设置扫描模式"功能。
147
1483. 获取状态
149
150   - 同"Br功能界面使用说明文档"中的"获取状态"功能。
151
1524. 获取扫描模式
153
154   - 同"Br功能界面使用说明文档"中的"获取扫描模式"功能。
155
1565. 获取当前连接状态
157
158   - 同"Br功能界面使用说明文档"中的"获取当前连接状态"功能。
159
1606. SPP服务器创建(安全)
161
162   - 使用指导:
163
164     > 创建蓝牙服务器侦听套接字。
165     >
166     > name表示服务名称。option表示侦听参数SppOption。
167     >
168     > callback回调用于返回服务器套接字ID。
169
170   - 限制条件:需要在相关类型事件发生改变前,开启监听。
171
172   - 验证方法:在事件变化后,查看是否有弹窗信息显示。
173
1747. SPP服务器创建(非安全)
175
176   - 与"SPP服务器创建(安全)"的区别是 "secure: false"
177
1788. 注册pin码变化
179
180   - 同"Br功能界面使用说明文档"中的"注册pin码变化"功能。
181
1829. SPP服务器写入
183
184   - 同"SPPClient"中的"SPP服务器写入"功能。
185
18610. SPP服务器接受
187
188    - 使用指导:
189
190      > 等待远程设备连接。serverSocket表示服务器套接字ID,由sppListen返回。
191      >
192      > callback回调用于返回客户端套接字ID。
193
194    - 限制条件:发送了clientSocketID。
195
196    - 验证方法:查看显示信息。
197
19811. SPP服务器读取打开
199
200    - 同"SPPClient"中的"SPP服务器读取关闭"功能。
201
20212. SPP服务器读取关闭
203
204    - 同"SPPClient"中的"SPP服务器读取关闭"功能。
205
20613. SPP服务器关闭
207
208    - 使用指导:
209
210      > 禁用spp服务器套接字并释放相关资源。
211      >
212      > 套接字指示服务器套接字ID,由sppListen返回。
213
214    - 限制条件:SPP服务器打开。
215
216    - 验证方法:服务端无法被搜索到。
217
21814. SPP客户端关闭
219
220    - 同"SPPClient"中的"SPP客户端关闭"功能。