android屏幕亮度权限,安卓支持将屏幕亮度设为0的方法。

本文介绍了如何通过修改Android 9.0的framework代码,允许应用将屏幕亮度设置为0,同时不会影响系统设置中的最小亮度。详细步骤包括改动DisplayPowerController.java以设置最小亮度为0,以及在PowerManagerService.java中处理重启后的屏幕亮度问题,确保设备可操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言,本文通过修改framework代码实现,单纯在app上是无法做到的,此外本文修改的是安卓9.0源码。

1、安卓app中通过代码修改屏幕亮度的方法。

可能需要的权限:

设置屏幕亮度:

/**

* app中设置亮度函数

* 设置当前系统的亮度值:0~255

* 虽然参数可以为0,但是实际上屏幕还是有一定亮度,实际会设置为10,这个值对应的具体配置文件位置:

* frameworks\base\core\res\res\values\config.xml中config_screenBrightnessSettingMinimum值

* 虽然把这个值设为0可以将亮度设为0,但是系统设置中的亮度调节也可以调到0,这不是我们想要的结果。

* 我们只是单纯的想通过代码设置亮度为0

*/

public void setSysScreenBrightness(int brightness, Context context) {

try {

ContentResolver resolver = context.getContentResolver();

Uri uri = Settings.System.getUriFor(Settings.System.SCREEN_BRIGHTNESS);

Settings.System.putInt(resolver, Settings.System.SCREEN_BRIGHTNESS, brightness);

resolver.notifyChange(uri, null); // 实时通知改变

} catch (Exception e) {

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值