Android Lights筆記

Android Lights

 

1、lights類型

在Android中目前定義的lights有以下的幾種。

 

 

 

2、lights應用

每一種邏輯的燈的類型都有多種的物理硬件類型,如下所示:

 

---------------------------------------------------------------------------------

|   Logical Light Type                    |              Physical HardWare       |

---------------------------------------------------------------------------------

|       Backlight                             |    Backlight LED, Trackball LED  |

---------------------------------------------------------------------------------

|       Keyboard                             |             Keyboard LED               |

---------------------------------------------------------------------------------

|       Buttons                               |                Button LED               |

---------------------------------------------------------------------------------

|         Battery                              |                 3-color LED              |

---------------------------------------------------------------------------------

|       Notifications                         |        3-color LED,Trackball LED  |

---------------------------------------------------------------------------------

|        Attention                            |            Trackball LED                |

---------------------------------------------------------------------------------


backlight支持256等級亮度,0爲關閉,255爲最亮。但是這個也要根據實際的物理硬件來做不同的判斷。

Attention通常是未接電話,這裏也就是我們手機上的未接電話的設置;

Notifications通常有些應用會使用,比如短信,twitter等;

Battery燈通常是指示電池狀態,是否低電,是否滿電等;

 

 

3、代碼分佈

適配層代碼路徑在

hardware/$(PROJECT)/liblights/lights.c

hardware/libhardware/include/hardware/lights.h

其中HAL層將所有的lights均作了處理。

 

 

4、硬件實現

lights在硬件上的實現方式有PMIC,PWM,GPIO,3-color led.

 

 

5、舉例

拿背光調節做例子。

背光亮度的調節主要分爲幾塊:

boot,kernel,Start Sys, Suspend

 

在boot中的作用主要是體現在這些方面:關機充電時刷充電圖片,刷boot時的圖片;

kernel:刷開機圖片;

------ HAL ---------

start sys: 系統開機動畫等等是在這裏實現;

suspend:休眠關閉背光,喚醒則重置爲設置的背光亮度,這裏可以看看powermanager service;

所以我們從開機到系統休眠看到的背光亮度依次爲boot_set--->kernel_set---->Sys_set---->backlight_off_by_powermanager_service

 

 

Have Fun!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章