Overview

以背光调节为例:

  PowerManagerService

    使用ContentObserver对Settings.System.SCREEN_BRIGHTNESS进行观测,数据变动则启动一次背光调节

  DisplayPowerController

    使用animateScreenBrightness算法(渐变)计算出背光值,调用DisplayPowerState提供的接口进行调节

  DisplayPowerState

    接收到背光值,调用LightService提供的接口进行调节

  LightsService

    调用JNI提供的setLight_native进行调节

  JNI

    load HAL层so库,调用backlight类light device的set_light进行背光调节

  HAL

    配置硬件上支持的light device的set_light函数,例如backlight,写入背光值到"/sys/class/leds/lcd-backlight/brightness"

posted @ 2018-01-17 15:51  __千里之行  阅读(156)  评论(0编辑  收藏  举报