Android init进程中的 charger mode 模式

时间:2021-08-10 17:27:34

原文地址:http://blog.csdn.net/k_linux_man/article/details/7292746

       假如基于Andriod系统平台的手机在没有硬件充电指示灯的情况下,你如何知道电池是否在充电呢,进入andriod系统才能进行充电指示,而我们有时候仅仅需要充电而不需要进入系统,一般的情况是,当你关机的时候,插上充电器,屏幕会出现充电的图标。这是如何做到的呢?

       android 为我们提供了一个c程序,在system/core/charger/目录下。

       首先说明一下charger目录下的东西,一个charger.c 判断电池的电量,以及显示充电图标的功能。 iamges存放了图标,还有一个Android.mk

      init进程是如何去判断charger mode的呢?他是从cmdline上获取的。查看的话路径在/proc/cmdl。

      那如何让android的init进程进入这种模式呢,当然需要你在bootloader或者在uboot里,让androidboot.mode=charger。

init.rc中还需要进行配置,添加

system batteryserver  /charger

     oneshot


on charger

     class_start charger

 

在device目录下device.mk中的PRODUCT_PACKAGES :=

添加charger  还有charger_res_images  两项。

编译一下,make bootiamge之后,烧机。开机之后你就会看到一个电池的图标在不断的充电...