蓝牙设置开发指导

简介

蓝牙设置主要提供了开启蓝牙、关闭蓝牙、获取蓝牙状态的方法,帮助开发者实现基本蓝牙功能。

场景介绍

主要场景有:

  • 开启、关闭蓝牙

接口说明

完整的 JS API 说明以及实例代码请参考:access 接口

具体接口说明如下表。

接口名 功能描述
enableBluetooth() 开启蓝牙。
disableBluetooth() 关闭蓝牙。
getState() 获取蓝牙开关状态。
on(type: 'stateChange') 订阅蓝牙设备开关状态事件。
off(type: 'stateChange') 取消订阅蓝牙设备开关状态事件。

主要场景开发步骤

开启、关闭蓝牙

  1. import需要的access模块。
  2. 需要SystemCapability.Communication.Bluetooth.Core系统能力。
  3. 开启蓝牙。
  4. 关闭蓝牙。
  5. 示例代码:
import access from '@ohos.bluetooth.access';
import { BusinessError } from '@ohos.base';

// 开启蓝牙
access.enableBluetooth();
access.on('stateChange', (data) => {
  let btStateMessage = '';
  switch (data) {
    case 0:
      btStateMessage += 'STATE_OFF';
      break;
    case 1:
      btStateMessage += 'STATE_TURNING_ON';
      break;
    case 2:
      btStateMessage += 'STATE_ON';
      break;
    case 3:
      btStateMessage += 'STATE_TURNING_OFF';
      break;
    case 4:
      btStateMessage += 'STATE_BLE_TURNING_ON';
      break;
    case 5:
      btStateMessage += 'STATE_BLE_ON';
      break;
    case 6:
      btStateMessage += 'STATE_BLE_TURNING_OFF';
      break;
    default:
      btStateMessage += 'unknown status';
      break;
  }
  if (btStateMessage == 'STATE_ON') {
    access.off('stateChange');
  }
  console.info('bluetooth statues: ' + btStateMessage);
})

// 关闭蓝牙
access.disableBluetooth();
access.on('stateChange', (data) => {
  let btStateMessage = '';
  switch (data) {
    case 0:
      btStateMessage += 'STATE_OFF';
      break;
    case 1:
      btStateMessage += 'STATE_TURNING_ON';
      break;
    case 2:
      btStateMessage += 'STATE_ON';
      break;
    case 3:
      btStateMessage += 'STATE_TURNING_OFF';
      break;
    case 4:
      btStateMessage += 'STATE_BLE_TURNING_ON';
      break;
    case 5:
      btStateMessage += 'STATE_BLE_ON';
      break;
    case 6:
      btStateMessage += 'STATE_BLE_TURNING_OFF';
      break;
    default:
      btStateMessage += 'unknown status';
      break;
  }
  if (btStateMessage == 'STATE_OFF') {
    access.off('stateChange');
  }
  console.info("bluetooth statues: " + btStateMessage);
})
  1. 错误码请参见蓝牙服务子系统错误码
  2. 如何验证: 执行开启蓝牙代码,记录日志“bluetooth statues: STATE_ON”,则表示开启蓝牙成功。执行关闭蓝牙代码,记录日志“bluetooth statues: STATE_OFF”,则表示蓝牙关闭成功。