场景介绍

使用星闪前需要在设置应用里手动打开星闪。可以通过主动查询或订阅通知方式获取星闪状态,星闪状态变化为STATE_ON时可以进行相应的业务流程。

接口说明

提供2种获取星闪开关状态的方式,主动查询和订阅状态变化。

接口名 描述
getState: NearlinkState 主动查询星闪开关状态。
[on](type: ‘stateChange’, callback: Callback): void 订阅星闪开关状态变化事件。
[off](type: ‘stateChange’, callback?: Callback): void 取消订阅星闪开关状态变化事件。

开发步骤

说明

可以在设备“设置 > 多设备协同 > 星闪”路径下,打开或关闭星闪,触发开关状态的变化。

  1. 导入相关模块。
import { manager } from '@kit.NearLinkKit';
import { BusinessError } from '@kit.BasicServicesKit';
  1. 发起星闪状态查询。
try {
  let state : manager.NearlinkState = manager.getState();
  console.info('state = '+ JSON.stringify(state));
} catch (err) {
  console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message);
}
  1. 或者通过注册的方式订阅星闪开关状态变化。
let onReceiveEvent:(data: manager.NearlinkState) => void = (data: manager.NearlinkState) => {
  console.info('nearlink state = '+ JSON.stringify(data));
}
try {
  manager.on('stateChange', onReceiveEvent);
} catch (err) {
  console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message);
}
  1. 取消订阅星闪开关状态变化,其中onReceiveEvent是[步骤3]中定义的回调函数。
try {
  manager.off('stateChange', onReceiveEvent);
} catch (err) {
  console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message);
}

本文提到的 [相关技术点] 只是冰山一角!勉费《HarmonyOS全栈开发实战》+《鸿蒙项目源码合集》,涵盖基础到进阶,助你快速上手鸿蒙!👉 点我【下方】立拿

在这里插入图片描述

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐