当前位置: 首页 > news >正文

20250917让荣品RD-RK3588-MID开发板的Android13系统在刷机的时候就直接以百分比显示电池电量

20250917让荣品RD-RK3588-MID开发板的Android13系统在刷机的时候就直接以百分比显示电池电量
2025/9/17 14:17


缘起:比较喜欢以百分比/数字的形式显示电池电量。
BAIDU了一下,在CSDN上找到了方法!


rootroot@rootroot-X99-Turbo:~/rk-android13-20250818RD-RK3588-MID$ 
rootroot@rootroot-X99-Turbo:~/rk-android13-20250818RD-RK3588-MID$ find . -name DatabaseHelper.java
./packages/providers/MediaProvider/src/com/android/providers/media/DatabaseHelper.java
./packages/apps/Messaging/src/com/android/messaging/datamodel/DatabaseHelper.java
./frameworks/base/services/voiceinteraction/java/com/android/server/voiceinteraction/DatabaseHelper.java
./frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
rootroot@rootroot-X99-Turbo:~/rk-android13-20250818RD-RK3588-MID$ 


Y:\android13-20250818\frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java
Z:\rk-android13-20250818RD-RK3588-MID\frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java

    private void loadSystemSettings(SQLiteDatabase db) {
SQLiteStatement stmt = null;
try {
stmt = db.compileStatement("INSERT OR IGNORE INTO system(name,value)"
+ " VALUES(?,?);");

            
            //  Settings.System.SHOW_BATTERY_PERCENT
loadSetting(stmt, "status_bar_show_battery_percent", 1);    // 2025/9/17 11:23 wenyuanbo add



loadBooleanSetting(stmt, Settings.System.DIM_SCREEN,
R.bool.def_dim_screen);
loadIntegerSetting(stmt, Settings.System.SCREEN_OFF_TIMEOUT,
R.integer.def_screen_off_timeout);

            // Set default cdma DTMF type
loadSetting(stmt, Settings.System.DTMF_TONE_TYPE_WHEN_DIALING, 0);

            // Set default hearing aid
loadSetting(stmt, Settings.System.HEARING_AID, 0);

            // Set default tty mode
loadSetting(stmt, Settings.System.TTY_MODE, 0);

            loadIntegerSetting(stmt, Settings.System.SCREEN_BRIGHTNESS,
R.integer.def_screen_brightness);

            loadIntegerSetting(stmt, Settings.System.SCREEN_BRIGHTNESS_FOR_VR,
com.android.internal.R.integer.config_screenBrightnessForVrSettingDefault);

            loadBooleanSetting(stmt, Settings.System.SCREEN_BRIGHTNESS_MODE,
R.bool.def_screen_brightness_automatic_mode);

            loadBooleanSetting(stmt, Settings.System.ACCELEROMETER_ROTATION,
R.bool.def_accelerometer_rotation);

            loadIntegerSetting(stmt, Settings.System.USER_ROTATION, R.integer.def_user_rotation);

            loadDefaultHapticSettings(stmt);

            loadBooleanSetting(stmt, Settings.System.NOTIFICATION_LIGHT_PULSE,
R.bool.def_notification_pulse);

            loadBooleanSetting(stmt, Settings.System.SYSTEM_HIDE_STATUS_BAR,
R.bool.def_hide_status_bar);

        loadBooleanSetting(stmt, Settings.System.SYSTEM_HIDE_NAVIGATION,
R.bool.def_hide_navigation);

        loadUISoundEffectsSettings(stmt);

            loadIntegerSetting(stmt, Settings.System.POINTER_SPEED,
R.integer.def_pointer_speed);

            /*
* IMPORTANT: Do not add any more upgrade steps here as the global,
* secure, and system settings are no longer stored in a database
* but are kept in memory and persisted to XML.
*
* See: SettingsProvider.UpgradeController#onUpgradeLocked
*/
} finally {
if (stmt != null) stmt.close();
}
}

百度:RK3588 Android13默认开启电池百分比数字显示Framework_android13 配置 config.xml

https://blog.csdn.net/wxd_csdn_2016/article/details/109066597?spm=1001.2101.3001.6650.15&utm_medium=distribute.wap_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-15-109066597-blog-117755061.237%5Ev3%5Ewap_relevant_t0_download&depth_1-utm_source=distribute.wap_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-15-109066597-blog-117755061.237%5Ev3%5Ewap_relevant_t0_download&share_token=aba2fbef-036b-4b3b-8cdb-7345d7d8b566
默认打开电池电量百分比显示
https://blog.csdn.net/wxd_csdn_2016/article/details/109066597

于 2020-10-14 10:04:14 发布

这篇博客详细介绍了Android SettingsProvider的内部实现,特别是`DatabaseHelper`类中的`loadSystemSettings`方法,该方法负责加载系统设置,如`Settings.System.SHOW_BATTERY_PERCENT`的设置值。通过SQLite数据库操作,将系统设置加载到内存中,确保系统运行时能够正确显示电池百分比等关键设置。

SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java

private void loadSystemSettings(SQLiteDatabase db) {
...
//  Settings.System.SHOW_BATTERY_PERCENT
loadSetting(stmt, "status_bar_show_battery_percent", 1);    // 添加
...
}

https://blog.csdn.net/qq_37580586/article/details/114590432?spm=1001.2101.3001.6650.20&utm_medium=distribute.wap_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-20-114590432-blog-132890240.237%5Ev3%5Ewap_relevant_t0_download&depth_1-utm_source=distribute.wap_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-20-114590432-blog-132890240.237%5Ev3%5Ewap_relevant_t0_download&share_token=7bef461b-1f98-4aa3-938c-1d7d5ce82d09
Android系统默认显示电池电量百分比
https://blog.csdn.net/qq_37580586/article/details/114590432

status_bar_show_battery_percent=1

这个数值就是用来控制是否默认显示电池百分比的(0不显示 1显示)
我们也可以通过adb sehll 来修改这个数值:
settings put system status_bar_show_battery_percent 0(不显示电池电量百分比)
settings put system status_bar_show_battery_percent 0(显示电池电量百分比)

那么如果说是想让系统默认显示电池电量百分比其实就是让这个数值默认为1就好了
通过查找status_bar_show_battery_percent可以发现对应的String 名字为SHOW_BATTERY_PERCENT
然后查找SHOW_BATTERY_PERCENT
最后发现许多数值都是在/packages/apps/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java中设置的默认值:
通过如下方法设置的默认值:

private void loadSystemSettings(SQLiteDatabase db) {
SQLiteStatement stmt = null;
try {
stmt = db.compileStatement("INSERT OR IGNORE INTO system(name,value)"
+ " VALUES(?,?);");

            loadBooleanSetting(stmt, Settings.System.DIM_SCREEN,
R.bool.def_dim_screen);


            //Default display battery percentage
loadSetting(stmt, Settings.System.SHOW_BATTERY_PERCENT, 1);//设置默认显示电池百分比


}


通过loadSetting(stmt, Settings.System.SHOW_BATTERY_PERCENT, 1);来给SHOW_BATTERY_PERCENT设置默认值为1,编译后刷机,开机后默认显示电池百分比。
问题解决~ '(>﹏<)′


https://blog.csdn.net/baidu_41666295/article/details/117755061?spm=1001.2101.3001.6650.17&utm_medium=distribute.wap_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-17-117755061-blog-114590432.237%5Ev3%5Ewap_relevant_t0_download&depth_1-utm_source=distribute.wap_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-17-117755061-blog-114590432.237%5Ev3%5Ewap_relevant_t0_download&share_token=96ccd8af-548b-4c66-b436-36413e76263f
android 10.0状态栏显示电量百分比
https://blog.csdn.net/baidu_41666295/article/details/117755061

2.状态栏显示电量百分比的核心类
frameworks/base/packages/SettingsProvider/res/values/defaults.xml
frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java



文章转载自:

http://bFstucz7.hLfsn.cn
http://qsRHKGTB.hLfsn.cn
http://Tb7SmstV.hLfsn.cn
http://pZkiaU5V.hLfsn.cn
http://BEpODGk8.hLfsn.cn
http://aKZZAgk9.hLfsn.cn
http://pzvjGPei.hLfsn.cn
http://TXZhVt7e.hLfsn.cn
http://UDqevxKL.hLfsn.cn
http://kQlpcES6.hLfsn.cn
http://qbJj2hdg.hLfsn.cn
http://Tv1UDQoP.hLfsn.cn
http://3arg7xEC.hLfsn.cn
http://tuHwLmGa.hLfsn.cn
http://kPks1AYf.hLfsn.cn
http://7Uv6m2bR.hLfsn.cn
http://Q8n7MEbs.hLfsn.cn
http://11KlM20s.hLfsn.cn
http://surzwFu2.hLfsn.cn
http://pWMHwflX.hLfsn.cn
http://FWnUbwjv.hLfsn.cn
http://HP44IY6M.hLfsn.cn
http://lj4Zb1t2.hLfsn.cn
http://9avZ7h1q.hLfsn.cn
http://Eqis6gRQ.hLfsn.cn
http://Oa1fGyED.hLfsn.cn
http://ktaG2XUd.hLfsn.cn
http://Be3o1UKQ.hLfsn.cn
http://ODHpBSz1.hLfsn.cn
http://5A8KsJMQ.hLfsn.cn
http://www.dtcms.com/a/388374.html

相关文章:

  • MySQL 核心操作全解析(用户 + SHOW+DML+DCL)
  • 【前端】【React】【Zustand】[特殊字符] Zustand 系统学习大纲(实战版)
  • 在测试接口时,遇到关于时间参数的传参时,遇到类型编译器无法转换的解决方案
  • 晶圆厂为什么都采用高架地板?
  • unsloth 笔记:微调mistral-7b(纯文本数据集)
  • 【vim,Svelte】怎样使用 vim 编辑 Svelte 那些奇奇怪怪名字的文件?
  • 【AOI基板外观缺陷检测软件】基于Halcon+C#开发的AOI基板外观缺陷检测软件,全套源码,开箱即用
  • htb academy笔记-module-Password Attacks(一)
  • Java程序设计:顺序结构与分支结构
  • 铺满式水印添加教程!水印如何铺满整个详情页页面?
  • 基于SpringBoot+Vue.js开发的医疗器械管理系统
  • 职业定位:用 “能力 - 兴趣 - 需求” 模型找到赛道
  • Caffeine Expiry
  • 【C++项目】C++11重构muduo库
  • 如何选择靠谱的防伪溯源系统公司?
  • 线程池 相关知识
  • 搭建CI/CD 流水线简单说明
  • 大Key与热Key详解:概念、危害与解决方案
  • Java中的自动拆装箱原理
  • Android 入门笔记(2)
  • 程序员内功之成长性思维
  • vLLM 和 SGLang 是两个近年来备受关注的开源项目
  • CMake进阶: 路径处理指令join_paths和cmake_path
  • 算法简略速记手册
  • C语言(长期更新)第17讲内存函数
  • 【CSP-S】 基础知识与编程环境
  • Python HTTPS 教程 如何发送 HTTPS 请求、解决证书错误、实现抓包与网络调试全攻略
  • 【Cesium 开发实战教程】第五篇:空间分析实战:缓冲区、可视域与工程测量
  • 告别塑料感!10分钟学会基础材质调节
  • CSS Modules 和 CSS-in-JS比较