• 8.6 Android灯光系统_源码分析_背光灯


    Change system screen brightness, using android.provider.Settings.System.SCREEN_BRIGHTNESS
    android-er.blogspot.com/2011/02/change-system-screen-brightness-using.html

    Android 系统设置中显示设置之亮度调节篇 - 尹君子 - 博客园.htm
    http://www.cnblogs.com/yinhaojun/p/3876132.html

    Android中内容观察者的使用---- ContentObserver类详解 (转)
    http://www.cnblogs.com/slider/archive/2012/02/14/2351702.html

    【Android开发经验】与屏幕亮度调节相关的各种方法整理 - 赵凯强 - 博客频道 - CSDN.NET.htm
    http://blog.csdn.net/zhaokaiqiang1992/article/details/35814785

    怎么控制背光灯?

    App:通过android.provide.Setting.System.putint()把亮度值写入数据库就可以了

    肯定有App在监测数据库,这种机制称为”内容观察者”,代码里面叫ContentObserver

    背光灯的控制服务代码在:DisplayPowerController.java中,背光是属于电源管理的一小部分

    在DisplayPowerState.java中执行唤醒和休眠相关操作

    PhotonicModulator.run()创建一个线程运行,其在没事时休眠mLock.wait(),被唤醒后调用setBrightness函数,其调用mBackLight.setBrightness(),就是调用JNI接口来设置

    在ScreenState/ScreenBrightness/ColorFade三个函数中会调用scheduleScreenUpdate会发信息来执行run函数,mScreenUpdateRunnable.run()创建一个线程运行,其执行setState函数,在其中调用mlock.notifyAll来唤醒

    过程分析:

    SystemServer:

    (1)注册lightsService


    Setting -> Dispaly -> Brightness level : BrightnessDialog.java(系统只带设置背光的APP)

  • 相关阅读:
    28.Implement strStr()【leetcod】
    35. Search Insert Position【leetcode】
    27. Remove Element【leetcode】
    20. Valid Parentheses【leetcode】
    14. Longest Common Prefix【leetcode】
    Java的String中的subString()方法
    charAt()的功能
    spring整合mybatis
    AOP
    代理模式
  • 原文地址:https://www.cnblogs.com/liusiluandzhangkun/p/9131294.html
Copyright © 2020-2023  润新知