android系统屏幕亮度调节
在$SDK/frameworks/base/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java中修改,PhoneWindowManager.java这个类管理所有窗口,修改系统时这个类很有用。调节屏幕亮度首先得判断系统屏幕亮度是不是自动调节模式,若是的话,要想手动调节就必须取消自动模式,设为手动模式,我们可以通过获取IPowerManager对象来设置setBacklightBrightness背光度来调节屏幕亮度,当然也可以通过获取窗口通过设置窗口参数来调节屏幕亮度,值得注意的时,当你调节亮度要想全程生效就必须将设置进行保存,这样才行,好了,废话不多说,下面就是代码通过IPowerManager的方式来调节,测试通过,可供参考:
/**check mod */
public boolean isAutoBrightness(ContentResolver aContentResolver) {
boolean automicBrightness = false;
try{
automicBrightness = Settings.System.getInt(aContentResolver,
Settings.System.SCREEN_BRIGHTNESS_MODE) == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC;
}
catch(SettingNotFoundException e)
{
e.printStackTrace();
}
return automicBrightness;
}
/** get light */
public int getScreenBrightness() {
int nowBrightnessValue = 0;
ContentResolver resolver = mContext.getContentResolver();
try{
nowBrightnessValue = android.provider.Settings.System.getInt(resolver, Settings.System.SCREEN_BRIGHTNESS);
}
catch(Exception e) {
e.printStackTrace();
}
return nowBrightnessValue;
}
/**set light **/
private void setBrightness() {
try {
IPowerManager power = IPowerManager.Stub.asInterface(
ServiceManager.getService("power"));
if (power != null) {
power.setBacklightBrightness(changeLight);
}
} catch (RemoteException doe) {
}
}
/**stop audto adjust light */
public void stopAutoBrightness() {
Settings.System.putInt(mContext.getContentResolver(),
Settings.System.SCREEN_BRIGHTNESS_MODE,
Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
}
/** start auto adjust light *
* @param activity */
public void startAutoBrightness() {
Settings.System.putInt(mContext.getContentResolver(),
Settings.System.SCREEN_BRIGHTNESS_MODE,
Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
}
/** save light state*/
public void saveBrightness(ContentResolver resolver) {
Uri uri = android.provider.Settings.System.getUriFor("screen_brightness");
android.provider.Settings.System.putInt(resolver, "screen_brightness", changeLight);
// resolver.registerContentObserver(uri, true, myContentObserver);
resolver.notifyChange(uri, null);
}
android系统屏幕亮度调节相关推荐
- android+系统屏幕亮度,android 设置系统屏幕亮度
android 设置系统屏幕亮度 权限 /** * 获得当前屏幕亮度的模式 * SCREEN_BRIGHTNESS_MODE_AUTOMATIC=1 为自动调节屏幕亮度 * SCREEN_BRIGHT ...
- android 系统亮度,android 设置系统屏幕亮度
android 设置系统屏幕亮度 权限 /** * 获得当前屏幕亮度的模式 * SCREEN_BRIGHTNESS_MODE_AUTOMATIC=1 为自动调节屏幕亮度 * SCREEN_BRIGHT ...
- Android 修改系统屏幕亮度
[toc] Android系统的亮度值取值范围在0~255,数据类型是int型. 下面分两步介绍: 介绍关于系统亮度的一些常用的方法 结合一个案例说说 一.系统亮度常用的方法 1. 获得当前屏幕亮度的 ...
- Android 屏幕亮度调节
亮度调节: 1. 当前屏幕的亮度调节 2. 整个系统的亮度调节(需要申请系统权限) <uses-permission android:name="android.permission. ...
- Android 修改系统屏幕亮度及监听
效果 修改系统屏幕亮度这种操作还是挺常见的,一般在多媒体开发中都多少会涉及到. emmm 效果图好像看不出来变化..不过不是很重要.. 操作拆解 上图中可以看到,分别有加减按钮和seekbar来控制亮 ...
- window7系统电脑屏幕亮度调节
转自:微点阅读 https://www.weidianyuedu.com window7电脑怎么调亮度 导语:电脑屏幕的亮度调节,对预防眼疲劳.节省电源都有起到一定作用,那么在win7系统中,电脑屏 ...
- 笔记本win7系统屏幕亮度无法调节解决措施
电脑屏幕亮度会影响到眼睛视力,我们都会将屏幕亮度调节至最佳状态,或者让屏幕亮度自动调节,在前面也与大家分享过一款屏幕亮度调节软件,通过该软件可以快速的设置屏幕亮度,最近有用户在笔记本win7系统中遇到 ...
- Android设置屏幕亮度
目录 目录 使用场景 屏幕亮度调节模式 获取屏幕亮度值 设置系统屏幕亮度值 设置当前窗口亮度 使用场景 最近在研究AndroidL Settings的代码,写了一个简单的控件来操控屏幕亮度. 其实,调 ...
- Android 修改屏幕亮度方案
本篇文章主要介绍 Android 开发中的部分知识点,通过阅读本篇文章,您将收获以下内容: 一.获取系统Settings 中的亮度 二.修改APP界面屏幕亮度,不会影响其他APP 三.修改系统Sett ...
最新文章
- Hadoop命令查看可以访问的queue
- Java函数式接口看这一篇就够了
- jdbc Template 介绍和 spring 链接数据源的四种方式
- ASP.NET操作Excel(终极方法NPOI)
- java 关闭阻塞线程池_如果优雅地关闭ExecutorService提供的java线程池
- SpringSecurity-1-AuthenticationFailureHandler接口(登录失败之后的处理逻辑)
- 解决/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.14' not found问题
- linux驱动开发(十)——misc杂散设备
- automake搭建项目工程例子讲解
- 2020-09-10 保证软件开发过程遵循ISO 26262标准的十个主要进阶步骤
- Java字节码技术javassist
- Python打印指定日期的日历
- WSUS:数据库从WID 换成 SQLExpress
- python调用sql数据库进存销_Python如何使用数据库的连接池
- Arduino功率计:测量电压、电流和功耗
- marshmallow——快速入门
- 使用python统计excel两文件数据,excel公式为countif
- matlab 求取矩阵中值,matlab中取矩阵中指定列的值组成新矩阵
- 计算机网络-超网聚合(子网合并)
- 从神龙川到大仙顶——2018秋