鴻蒙OS Light開發(fā)指導(dǎo)

2020-09-18 15:48 更新

場景介紹

當(dāng)設(shè)備需要設(shè)置不同的閃爍效果時(shí),可以調(diào)用 Light 模塊,例如,LED 燈能夠設(shè)置燈顏色、燈亮和燈滅時(shí)長的閃爍效果。

說明

使用該功能依賴于硬件設(shè)備是否具有 LED 燈。

接口說明

燈模塊主要提供的功能有:查詢設(shè)備上燈的列表,查詢某個(gè)燈設(shè)備支持的效果,打開和關(guān)閉燈設(shè)備。LightAgent 類開放能力如下,具體請查閱 API 參考文檔。

接口名 描述
getLightIdList() 獲取硬件設(shè)備上的燈列表。
isSupport(int) 根據(jù)指定燈Id查詢硬件設(shè)備是否有該燈。
isEffectSupport(int, String) 查詢指定的燈是否支持指定的閃爍效果。
turnOn(int, String) 對指定的燈創(chuàng)建指定效果的一次性閃爍。
turnOn(int, LightEffect) 對指定的燈創(chuàng)建自定義效果的一次性閃爍。
turnOn(String) 對指定的燈創(chuàng)建指定效果的一次性閃爍。
turnOn(LightEffect) 對指定的燈創(chuàng)建自定義效果的一次性閃爍。
turnOff(int) 關(guān)閉指定的燈。
turnOff() 關(guān)閉指定的燈。

開發(fā)步驟

  1. 查詢硬件設(shè)備上燈的列表。

  1. 查詢指定的燈是否支持指定的閃爍效果。

  1. 創(chuàng)建不同的閃爍效果。

  1. 關(guān)閉指定的燈。

   private LightAgent lightAgent = new LightAgent();

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

    
       // ...

    
       // 查詢硬件設(shè)備上的燈列表
       List<Integer> myLightList = lightAgent.getLightIdList();
       if (myLightList.isEmpty()) {
           return;
       }
       int lightId = myLightList.get(0);

    
       // 查詢指定的燈是否支持指定的閃爍效果
       boolean isSupport = lightAgent.isEffectSupport(lightId, LightEffect.LIGHT_ID_KEYBOARD);

    
       // 創(chuàng)建指定效果的一次性閃爍
       boolean turnOnResult = lightAgent.turnOn(lightId, LightEffect.LIGHT_ID_KEYBOARD);

    
       // 創(chuàng)建自定義效果的一次性閃爍
       LightBrightness lightBrightness = new LightBrightness(255, 255, 255);
       LightEffect lightEffect = new LightEffect(lightBrightness, 1000, 1000);
       boolean turnOnEffectResult = lightAgent.turnOn(lightId, lightEffect);

    
       // 關(guān)閉指定的燈
       boolean turnOffResult = lightAgent.turnOff(lightId);
   }
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號