Android系统自定义关机充电图标 | 您所在的位置:网站首页 › 小米充电界面充电动画怎么显示出来 › Android系统自定义关机充电图标 |
需求描述
关机充电图标的修改地址在哪里?替换照片有哪些格式要求? 实现方案图片路径: system/core/healthd/images/ 关机充电: system/core/healthd/healthd_mode_charger.cpp 字体路径: bootable/recovery/minui/graphics.cpp bootable/recovery/minui/font_10x18.h 充电图标和电量百分比显示主要在函数 healthd_mode_charger_heartbeat中实现: void healthd_mode_charger_heartbeat() { struct charger *charger = &charger_state; int64_t now = curr_time_ms(); handle_input_state(charger, now); handle_power_supply_state(charger, now); /* do screen update last in case any of the above want to start * screen transitions (animations, etc) */ update_screen_state(charger, now); }battery_scale.png是由6张不同充电状态的图片的合成,对应状态如下: static struct frame batt_anim_frames[] = { { .disp_time = 750, .min_capacity = 0, .level_only = false, .surface = NULL, }, { .disp_time = 750, .min_capacity = 20, .level_only = false, .surface = NULL, }, { .disp_time = 750, .min_capacity = 40, .level_only = false, .surface = NULL, }, { .disp_time = 750, .min_capacity = 60, .level_only = false, .surface = NULL, }, { .disp_time = 750, .min_capacity = 80, .level_only = true, .surface = NULL, }, { .disp_time = 750, .min_capacity = BATTERY_FULL_THRESH, .level_only = false, .surface = NULL, }, };battery_scale.png图片的制作 利用系统源码中的脚本bootable/recovery/interlace-frames.py,即能将battery_scale.png拆分成几张png图片,也可以将若干张png图片合成一张battery_scale.png 合成图片命令 python interlace-frames.py -o battery_scale.png battery00.png battery01.png battery02.png battery03.png battery04.png battery05.png拆分图片命令 python interlace-frames.py -d battery_scale.png -o battery.png拆分后的原生关机图片格式:位深度8,png格式 ,分辨率为120x186 测试后发现位深度不限,分辨率可以与屏幕分辨率相同,格式为png即可,但如果遇到图片替换后黑屏不显示充电图标,建议使用和原生格式一致的。
XnConvert——批量转换图片位深度工具 |
CopyRight 2018-2019 实验室设备网 版权所有 |