codecamp

鸿蒙OS Light开发指导

场景介绍

当设备需要设置不同的闪烁效果时,可以调用 Light 模块,例如,LED 灯能够设置灯颜色、灯亮和灯灭时长的闪烁效果。

说明

使用该功能依赖于硬件设备是否具有 LED 灯。

接口说明

灯模块主要提供的功能有:查询设备上灯的列表,查询某个灯设备支持的效果,打开和关闭灯设备。LightAgent 类开放能力如下,具体请查阅 API 参考文档。

接口名 描述
getLightIdList() 获取硬件设备上的灯列表。
isSupport(int) 根据指定灯Id查询硬件设备是否有该灯。
isEffectSupport(int, String) 查询指定的灯是否支持指定的闪烁效果。
turnOn(int, String) 对指定的灯创建指定效果的一次性闪烁。
turnOn(int, LightEffect) 对指定的灯创建自定义效果的一次性闪烁。
turnOn(String) 对指定的灯创建指定效果的一次性闪烁。
turnOn(LightEffect) 对指定的灯创建自定义效果的一次性闪烁。
turnOff(int) 关闭指定的灯。
turnOff() 关闭指定的灯。

开发步骤

  1. 查询硬件设备上灯的列表。

  1. 查询指定的灯是否支持指定的闪烁效果。

  1. 创建不同的闪烁效果。

  1. 关闭指定的灯。

   private LightAgent lightAgent = new LightAgent();

    
   @Override
   public void onStart(Intent intent) {
       super.onStart(intent);
       super.setUIContent(ResourceTable.Layout_light_layout);

    
       // ...

    
       // 查询硬件设备上的灯列表
       List<Integer> myLightList = lightAgent.getLightIdList();
       if (myLightList.isEmpty()) {
           return;
       }
       int lightId = myLightList.get(0);

    
       // 查询指定的灯是否支持指定的闪烁效果
       boolean isSupport = lightAgent.isEffectSupport(lightId, LightEffect.LIGHT_ID_KEYBOARD);

    
       // 创建指定效果的一次性闪烁
       boolean turnOnResult = lightAgent.turnOn(lightId, LightEffect.LIGHT_ID_KEYBOARD);

    
       // 创建自定义效果的一次性闪烁
       LightBrightness lightBrightness = new LightBrightness(255, 255, 255);
       LightEffect lightEffect = new LightEffect(lightBrightness, 1000, 1000);
       boolean turnOnEffectResult = lightAgent.turnOn(lightId, lightEffect);

    
       // 关闭指定的灯
       boolean turnOffResult = lightAgent.turnOff(lightId);
   }
鸿蒙OS 控制类小器件概述
鸿蒙OS Vibrator开发指导
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

鸿蒙OS 开发

鸿蒙OS 术语

鸿蒙OS Java API参考

鸿蒙OS ohos.aafwk.ability

鸿蒙OS ohos.aafwk.abilityjet.activedata

鸿蒙OS ohos.aafwk.content

鸿蒙OS java.lang

鸿蒙OS java.Util

鸿蒙OS java.Util class

鸿蒙OS ohos.data.dataability

鸿蒙OS ohos.data.dataability class

鸿蒙OS ohos.agp.components

鸿蒙OS ohos.agp.components interface

鸿蒙OS ohos.agp.components class

鸿蒙OS ohos.global.configuration

鸿蒙OS java.io

鸿蒙OS ohos.data.resultset

鸿蒙OS ohos.data.resultset interface

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }