您的位置:首页 > 移动开发 > Android开发

Android 编程下与系统屏幕亮度相关的操作

2013-04-17 10:30 99 查看
部分定制的系统应用中需要去操作手机的屏幕亮度,这时候下面的代码可以满足改变屏幕亮度的需求:

1. 清单文件中所需要添加的权限

<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
<uses-permission android:name="android.permission.DEVICE_POWER" />
<uses-permission android:name="android.permission.UPDATE_DEVICE_STATS" />
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />


2. 操作系统屏幕亮度的相关代码

/**
* 获得当前屏幕亮度的模式 SCREEN_BRIGHTNESS_MODE_AUTOMATIC=1 为自动调节屏幕亮度
* SCREEN_BRIGHTNESS_MODE_MANUAL=0 为手动调节屏幕亮度
*/
private int getScreenMode() {
int screenMode = 0;
try {
screenMode = Settings.System.getInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE);
} catch (Exception localException) {

}
return screenMode;
}

/**
* 设置当前屏幕亮度的模式 SCREEN_BRIGHTNESS_MODE_AUTOMATIC=1 为自动调节屏幕亮度
* SCREEN_BRIGHTNESS_MODE_MANUAL=0 为手动调节屏幕亮度
*/
private void setScreenMode(int paramInt) {
try {
Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, paramInt);
} catch (Exception localException) {
localException.printStackTrace();
}
}

/**
* 获得当前屏幕亮度值 0--255
*/
private int getScreenBrightness() {
int screenBrightness = 255;
try {
screenBrightness = Settings.System.getInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS);
} catch (Exception localException) {

}
return screenBrightness;
}

/**
* 设置当前屏幕亮度值 0--255
*/
private void saveScreenBrightness(int paramInt) {
try {
Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, paramInt);
} catch (Exception localException) {
localException.printStackTrace();
}
}

/**
* 保存当前的屏幕亮度值,并使之生效
*/
private void setScreenBrightness(int paramInt) {
Window localWindow = getWindow();
WindowManager.LayoutParams localLayoutParams = localWindow.getAttributes();
float f = paramInt / 255.0F;
localLayoutParams.screenBrightness = f;
localWindow.setAttributes(localLayoutParams);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: