这里我们来介绍下backlight hal层,和之前一样,跟之前我们介绍的temperature的hal差不多,比sensor的hal还简单,这里我就不多说hal的介绍了,之前都有介绍的比较详细了,不清楚的可以参考前面的文章:
http://blog.csdn.net/zhangjie201412/article/details/7225617
首先要明确我们的目标,这里主要是封装一些方法,然后给android framework层使用(jni layer),打开一个sysfs中的节点,然后read/write,
明白这点就够了,直接贴代码:
/hardware/libhardware/module/lights/android_light.c
接下来是android.mk
这里我要声明的是,在读写之前先把文件的权限打开,在init.rc中去做
好了,hal层我们就添加到这边,我们来重新编译,然后打开我们的模拟器,
打开setting中的display,然后调节屏幕亮度,然后再cat brightness会发现节点中的值改变了
把亮度调到最高,值变成了255.
结束!!!!下面会分析android framework中jni去实现lightService。