最近在适配新机型的过程中遇到一个问题,关机后充电呼吸灯不亮.
刚开始遇到这个问题时,一时束手无策,因为对这关机充电的流程根本不清楚.最后查阅资料和同事交流后发现关键充电的代码在/system/core/healthd目录下.
知道代码在哪里后首先来看看main函数(healthd.cpp)
int main(int argc, char **argv) {
int ch;
int ret;
klog_set_level(KLOG_LEVEL);
healthd_mode_ops = &android_ops;//默认类型
if (!strcmp(basename(argv[0]), "charger")) {
healthd_mode_ops = &charger_ops;
} else {
while ((ch = getopt(argc, argv, "cr")) != -1) {
switch (ch) {
case 'c':
healthd_mode_ops = &charger_ops;
break;
case 'r':
healthd_mode_ops = &recovery_ops;
break;
case '?':
default:
KLOG_ERROR(LOG_TAG, "Unrecognized healthd option: %c\n",