1## SPPManager测试使用说明文档 2 3 本文档主要介绍蓝牙专项测试程序的Spp部分(ohos.bluetoothManager.d.ts)的功能使用说明。 4 5### 从主界面跳转到SPP蓝牙部分 6 7SPP测试分为SPPClient测试和SPPServer测试 8 9 10 11### SPPClient 12 13选择SPP_Client测试,进行SPP客户端的测试 14 15 16 17#### SPPClient的主要接口(ohos.bluetoothManager.d.ts) 18 19| method名称 | API名称 | 所需参数 | 返回值 | 备注 | 20| :-------------------------: | :------------------: | :----------------------------------------------------------: | :--------------------: | :--: | 21| 开蓝牙 | enablBluetooth | () | void | | 22| 关蓝牙 | disableBluetooth | () | void | | 23| 设置SPP扫描模式 | setBluetoothScanMode | (mode: ScanMode, duration: number) | void | | 24| 获取状态 | getState | () | BluetoothState | | 25| 获取扫描模式 | getBluetoothScanMode | () | ScanMode | | 26| 获取当前连接状态 | getBtConnectionState | () | ProfileConnectionState | | 27| SPP客户端链接(安全模式) | sppConnect | (device: string, option: SppOption, callback: AsyncCallback<number>) | void | | 28| SPP客户端连接(非安全模式) | sppConnect | (device: string, option: SppOption, callback: AsyncCallback<number>) | void | | 29| 配对设备 | pairDevice | (deviceId: string) | void | | 30| SPP客户端写入 | sppWrite | (clientSocket: number, data: ArrayBuffer) | void | | 31| SPP客户端读取打开 | on.sppRead | (type: "sppRead", clientSocket: number, callback: Callback<ArrayBuffer>) | void | | 32| SPP客户端读取关闭 | off.sppRead | (type: "sppRead", clientSocket: number, callback?: Callback<ArrayBuffer>) | void | | 33| SPP客户端关闭 | sppCloseClientSocket | (socket: number) | void | | 34 35>**接口所需的参数配置:** 36> 37>| 参数名 | 类型 | 必填 | 说明 | 38>| :------- | :-------------------- | :--- | :---------------------------------------- | 39>| device | string | 是 | 对端设备地址,例如:“XX:XX:XX:XX:XX:XX”。 | 40>| option | **SppOption** | 是 | spp客户端连接配置参数。 | 41>| callback | AsyncCallback<number> | 是 | 表示回调函数的入参,客户端socket的id。 | 42> 43> 44> 45>#### SppOption 描述spp的配置参数 46> 47>| 名称 | 类型 | 可读 | 可写 | 说明 | 48>| :----- | :------ | :--- | :--- | :--------------- | 49>| uuid | string | 是 | 是 | spp单据的uuid。 | 50>| secure | boolean | 是 | 是 | 是否是安全通道。 | 51>| type | SppType | 是 | 是 | Spp链路类型。 | 52> 53> 54> 55>#### SppType 枚举,Spp链路类型 56> 57>| 名称 | 值 | 说明 | 58>| :--------- | :--- | :------------------- | 59>| SPP_RFCOMM | 0 | 表示rfcomm链路类型。 | 60> 61>**参数:** 62> 63>| 参数名 | 类型 | 必填 | 说明 | 64>| :----------- | :---------- | :--- | :----------------- | 65>| clientSocket | number | 是 | 客户端socket的id。 | 66>| data | ArrayBuffer | 是 | 写入的数据。 | 67 68 69 70#### SPPClient测试功能 71 721. 开/关蓝牙 73 74 - 同"Br功能界面使用说明文档"中的"开/关蓝牙"功能。 75 76 77 782. 设置SPP扫描模式 79 80 - 同"Br功能界面使用说明文档"中的"设置扫描模式"功能。 81 82 83 843. 获取状态 85 86 - 同"Br功能界面使用说明文档"中的"获取状态"功能。 87 88 89 904. 获取扫描模式 91 92 - 同"Br功能界面使用说明文档"中的"获取扫描模式"功能。 93 94 95 965. 获取当前连接状态 97 98 - 同"Br功能界面使用说明文档"中的"获取当前连接状态"功能。 99 100 101 1026. SPP客户端连接(安全) 103 104 - 使用指导: 105 106 > 通过套接字连接到远程设备。 107 > 108 > device要连接的远程设备的地址。 109 > 110 > option表示连接参数{@link SppOption}。 111 > 112 > callback回调用于返回客户端套接字ID。 113 114 - 限制条件: 115 116 - 需要在相关类型事件发生改变前,开启监听。 117 - @throws { BusinessError } 201 - Permission denied. 118 * @throws { BusinessError } 401 - Invalid parameter. 119 * @throws { BusinessError } 801 - Capability not supported. 120 * @throws { BusinessError } 2900001 - Service stopped. 121 * @throws { BusinessError } 2900003 - Bluetooth switch is off. 122 * @throws { BusinessError } 2900004 - Profile is not supported. 123 * @throws { BusinessError } 2900099 - Operation failed. 124 125 - 验证方法:在事件变化后,查看是否有弹窗信息显示。 126 127 128 1297. SPP客户端连接(非安全) 130 131 - 与"SPP客户端连接(安全)"的区别是 "secure: false" 132 133 134 1358. 配对设备 136 137 - 同"Br功能界面使用说明文档"中的"配对设备"功能。 138 139 140 1419. SPP客户端写入 142 143 - 使用指导 : 144 145 > - 通过套接字写入数据。 146 > 147 > - clientSocket指示客户端套接字ID,sppAccept或sppConnect返回。 148 > - data指示要写入的数据。 149 > - return如果数据写入成功,则返回true;否则返回false。 150 151 - 限制条件: 152 153 - SPPServer存在。 154 - @throws { BusinessError } 401 - Invalid parameter. 155 * @throws { BusinessError } 801 - Capability not supported. 156 * @throws { BusinessError } 2901054 - IO error. 157 * @throws { BusinessError } 2900099 - Operation failed. 158 159 - 验证方法:查看显示信息。 160 161 162 16310. SPP客户端读取打开/关闭 164 165 - 使用指导:为回调函数,用来监听相关类型事件的变化,并弹窗显示信息。 166 167 > 订阅从套接字读取数据时报告的事件。 168 > 169 > type为要侦听的spp读取事件的类型。 170 > 171 > callback回调用于侦听spp读取事件。 172 173 - 限制条件: 174 175 - 需要在相关类型事件发生改变前,开启监听。 176 - @throws { BusinessError } 401 - Invalid parameter. 177 * @throws { BusinessError } 801 - Capability not supported. 178 * @throws { BusinessError } 2901054 - IO error. 179 * @throws { BusinessError } 2900099 - Operation failed. 180 181 - 验证方法:在事件变化后,查看是否有弹窗信息显示。 182 183 184 18511. SPP客户端关闭 186 187 - 使用指导:禁用spp客户端套接字并释放相关资源。 188 189 - 限制条件: 190 191 - SPPClient未打开。 192 - @throws { BusinessError } 401 - Invalid parameter. 193 * @throws { BusinessError } 801 - Capability not supported. 194 * @throws { BusinessError } 2900001 - Service stopped. 195 * @throws { BusinessError } 2900099 - Operation failed. 196 197 - 验证方法:无法搜索到本设备的Spp客户端。 198 199 200 201### SPPServer 202 203#### SPPServer的主要接口(ohos.bluetoothManager.d.ts) 204 205| method名称 | API名称 | 所需参数 | 返回值 | 备注 | 206| :-------------------------: | :------------------: | :----------------------------------------------------------: | :--------------------: | ---- | 207| 开蓝牙 | enableBluetooth | () | void | | 208| 关蓝牙 | disableBluetooth | () | void | | 209| 设置扫描模式 | setBluetoothScanMode | (mode: ScanMode, duration: number) | void | | 210| 获取状态 | getState | () | BluetoothState | | 211| 获取扫描模式 | getBluetoothScanMode | () | ScanMode | | 212| 获取当前连接状态 | getBtConnectionState | () | ProfileConnectionState | | 213| SPP服务器创建(安全模式) | sppListen | (name: string, option: SppOption, callback: AsyncCallback<number>) | void | | 214| SPP服务器创建(非安全模式) | sppListen | (name: string, option: SppOption, callback: AsyncCallback<number>) | void | | 215| 注册pin码变化 | on.pinRequired | (type: "pinRequired", callback: Callback<PinRequiredParam>) | void | | 216| SPP服务器写入 | sppWrite | (clientSocket: number, data: ArrayBuffer) | void | | 217| SPP服务器接受 | sppAccept | (serverSocket: number, callback: AsyncCallback<number>) | void | | 218| SPP服务器读取打开 | on.sppRead | (type: "sppRead", clientSocket: number, callback: Callback<ArrayBuffer>) | void | | 219| SPP服务器读取关闭 | off.sppRead | (type: "sppRead", clientSocket: number, callback?: Callback<ArrayBuffer>): void | void | | 220| SPP服务器关闭 | sppCloseServerSocket | (socket: number): | void | | 221| SPP客户端关闭 | sppCloseClientSocket | (socket: number): | void | | 222 223#### SPPServer测试功能 224 2251. 开/关蓝牙 226 227 - 同"Br功能界面使用说明文档"中的"开/关蓝牙"功能。 228 229 230 2312. 设置SPP扫描模式 232 233 - 同"Br功能界面使用说明文档"中的"设置扫描模式"功能。 234 235 236 2373. 获取状态 238 239 - 同"Br功能界面使用说明文档"中的"获取状态"功能。 240 241 242 2434. 获取扫描模式 244 245 - 同"Br功能界面使用说明文档"中的"获取扫描模式"功能。 246 247 248 2495. 获取当前连接状态 250 251 - 同"Br功能界面使用说明文档"中的"获取当前连接状态"功能。 252 253 254 2556. SPP服务器创建(安全) 256 257 - 使用指导: 258 259 > 创建蓝牙服务器侦听套接字。 260 > 261 > name表示服务名称。option表示侦听参数SppOption。 262 > 263 > callback回调用于返回服务器套接字ID。 264 265 - 限制条件: 266 267 - 需要在相关类型事件发生改变前,开启监听。 268 269 - @throws { BusinessError } 201 - Permission denied. 270 271 - @throws { BusinessError } 401 - Invalid parameter. 272 - @throws { BusinessError } 801 - Capability not supported. 273 - @throws { BusinessError } 2900001 - Service stopped. 274 - @throws { BusinessError } 2900003 - Bluetooth switch is off. 275 - @throws { BusinessError } 2900004 - Profile is not supported. 276 - @throws { BusinessError } 2900099 - Operation failed. 277 278 - 验证方法:在事件变化后,查看是否有弹窗信息显示。 279 280 281 2827. SPP服务器创建(非安全) 283 284 - 与"SPP服务器创建(安全)"的区别是 "secure: false" 285 286 287 2888. 注册pin码变化 289 290 - 同"Br功能界面使用说明文档"中的"注册pin码变化"功能。 291 292 293 2949. SPP服务器写入 295 296 - 同"SPPClient"中的"SPP服务器写入"功能。 297 298 299 30010. SPP服务器接受 301 302 - 使用指导: 303 304 > 等待远程设备连接。serverSocket表示服务器套接字ID,由sppListen返回。 305 > 306 > callback回调用于返回客户端套接字ID。 307 308 - 限制条件: 309 310 - 发送了clientSocketID。 311 - @throws { BusinessError } 401 - Invalid parameter. 312 * @throws { BusinessError } 801 - Capability not supported. 313 * @throws { BusinessError } 2900001 - Service stopped. 314 * @throws { BusinessError } 2900003 - Bluetooth switch is off. 315 * @throws { BusinessError } 2900004 - Profile is not supported. 316 * @throws { BusinessError } 2900099 - Operation failed. 317 318 - 验证方法:查看显示信息。 319 320 321 32211. SPP服务器读取打开 323 324 - 同"SPPClient"中的"SPP服务器读取关闭"功能。 325 326 327 32812. SPP服务器读取关闭 329 330 - 同"SPPClient"中的"SPP服务器读取关闭"功能。 331 332 333 33413. SPP服务器关闭 335 336 - 使用指导: 337 338 > 禁用spp服务器套接字并释放相关资源。 339 > 340 > 套接字指示服务器套接字ID,由sppListen返回。 341 342 - 限制条件: 343 344 - SPP服务器打开。 345 - @throws { BusinessError } 401 - Invalid parameter. 346 - @throws { BusinessError } 801 - Capability not supported. 347 - @throws { BusinessError } 2900001 - Service stopped. 348 - @throws { BusinessError } 2900099 - Operation failed. 349 350 - 验证方法:服务端无法被搜索到。 351 352 353 35414. SPP客户端关闭 355 356 - 同"SPPClient"中的"SPP客户端关闭"功能。