Android init进程中鲜为人知的charger mode 模式

Linux大全评论215 views阅读模式

假如基于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之后,烧机。

企鹅博客
  • 本文由 发表于 2020年8月16日 12:55:12
  • 转载请务必保留本文链接:https://www.qieseo.com/174244.html

发表评论