Android 亮度调节
AOSP中最大值 最小值
frameworks/base/core/res/res/values/config.xml
<integer name="config_screenBrightnessSettingMaximum">255</integer>
<item name="config_screenBrightnessSettingMaximumFloat" format="float" type="dimen">-2</item>
系统设置中默认初始值
frameworks/base/packages/SettingsProvider/res/values/defaults.xml
<integer name="def_screen_brightness">102</integer>
<bool name="def_screen_brightness_automatic_mode">false</bool>
设置APP亮度
private float getAppBrightness() {
Window window = getWindow();
WindowManager.LayoutParams lp = window.getAttributes();
return lp.screenBrightness;
}
protected void setAppBrightness(float brightness) {
Window window = getWindow();
WindowManager.LayoutParams lp = window.getAttributes();
lp.screenBrightness = brightness;
window.setAttributes(lp);
}
设置系统亮度
private int getSystemBrightness() {
/*
//android.permission.WRITE_SETTINGS
Settings.System.putInt(
getContentResolver(),
Settings.System.SCREEN_BRIGHTNESS_MODE,
Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
*/
try {
return Settings.System.getInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS);
} catch (Settings.SettingNotFoundException e) {
return -1;
}
}
protected void setSystemBrightness(int value) {
ContentResolver contentResolver = getContentResolver();
int brightness = (int) ((value <= 0 ? 1 : value) / 255f);
Settings.System.putInt(contentResolver, Settings.System.SCREEN_BRIGHTNESS, value);
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效