簡體   English   中英

為無電池設備配置 AOSP?

[英]Configure AOSP for a batteryless device?

我正在為類似手機的設備構建 Android AOSP 8.1 (Oreo),該設備是永久安裝的(例如工業部署)並且沒有電池。 但是,當我打開它時,它會顯示一個充電指示燈和 6% 的電量讀數。 我要更改什么來告訴 Android 沒有電池? 我認為這是可能的,因為 Android 也可以在機頂盒等設備上運行。 我可以刪除此驗證嗎? 我試圖修改BatteryService.java in./frameworks/base/services/core/java/com/android/server/BatteryService.java,還嘗試修改frameworks/base/core/res/res/values/config .xml 但沒有成功。 任何幫助都將受到歡迎。

提前致謝。

官方文檔描述了如何配置無電池設備: https://source.android.com/devices/tech/power/batteryless

有兩種可能的方法:

實現一個 Linux kernel power_supply class 充電器驅動程序,用於 AC 或 Z7ACA5EC618F73fsBD7328CFDCD701 屬性為 true 電源。

或者

在您的設備的 Health HAL 中配置 AC 充電器在線屬性。

正如 Simpl 提到的,AOSP 描述了如何配置無電池設備,我在 Android 9 上為我的工業設備實現了健康 HAL,默認情況下沒有電池它顯示 Battery UNKNOWN(如 AOSP 文檔中所述)。 我的要求是在未插入電池時顯示電池 100% 並在存在電池時顯示實際電池狀態。

下面是我的健康中心 HealthService.cpp 的代碼片段

int healthd_board_battery_update(struct android::BatteryProperties *props) {
    // return 0 to log periodic polled battery status to kernel log
    if (! props->batteryPresent){
    props->chargerAcOnline=true;
    props->batteryPresent = true;
    props->batteryStatus = android::BATTERY_STATUS_CHARGING;
    props->batteryHealth = android::BATTERY_HEALTH_GOOD;
    props->batteryFullCharge = 100;
    props->batteryLevel = 100;
    }
return 0;
    }
 

有關如何編寫自己的健康 HAL 的更多詳細信息,請關注: https://android.googlesource.com/platform/hardware/interfaces/+/master/health/2.0/README.md

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM