android 关机充电流程
生活随笔
收集整理的這篇文章主要介紹了
android 关机充电流程
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
點擊打開鏈接
0.主要流程
usb插入通過傳遞cmdline給init解析從而啟動充電進(jìn)程
1. LK
lk\app\aboot\aboot.c
update_cmdline----------if (boot_into_ffbm) // 工廠測試模式{cmdline_len += strlen(androidboot_mode);cmdline_len += strlen(ffbm_mode_string);/* reduce kernel console messages to speed-up boot */cmdline_len += strlen(loglevel);}else if (target_pause_for_battery_charge()) // 判斷是否關(guān)機(jī)充電{pause_at_bootup = 1; // charger flagcmdline_len += strlen(battchg_pause); //更新 cmd line 長度} ----------else if (pause_at_bootup) // charger flag{src = battchg_pause; // static const char *battchg_pause = " androidboot.mode=charger";if (have_cmdline) --dst;while ((*dst++ = *src++));}- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
2.init
#init.c if (!is_ffbm)is_charger = !strcmp(bootmode, "charger");---------- if (is_charger)action_for_each_trigger("charger", action_add_queue_tail);
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
# init.rc on chargerclass_start charger----------# init.qcom.rc service charger /chargerclass charger----------#system/core/healthd/Android.mk LOCAL_MODULE := healthd ... # Symlink /charger to /sbin/healthd
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
總結(jié)
以上是生活随笔為你收集整理的android 关机充电流程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何查看Android设备上的分区信息
- 下一篇: Android实现系统ROOT, 并能赋