与屏幕亮度调节相关的各种方法整理
2014-06-30 21:13
316 查看
public class SystemManager { private Context mContext; private static SystemManager sInstance; private SystemManager(final Context context) { mContext = context; } public static SystemManager init(final Context context) { if (null == sInstance) { sInstance = new SystemManager(context); } return sInstance; } public static SystemManager getInstance() { return sInstance; } // 判断是否是自动调光模式 public boolean isAutoBrightness() { boolean automicBrightness = false; try { ContentResolver resolver = mContext.getContentResolver(); automicBrightness = Settings.System.getInt(resolver, Settings.System.SCREEN_BRIGHTNESS_MODE) == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC; } catch (SettingNotFoundException e) { e.printStackTrace(); } return automicBrightness; } // 设置屏幕亮度 public void setBrightness(Activity activity, int brightness) { WindowManager.LayoutParams lp = activity.getWindow().getAttributes(); lp.screenBrightness = Float.valueOf(brightness) * (1f / 255f); activity.getWindow().setAttributes(lp); } // 保存屏幕亮度 public void saveBrightness(int brightness) { ContentResolver resolver = mContext.getContentResolver(); Uri uri = android.provider.Settings.System .getUriFor("screen_brightness"); android.provider.Settings.System.putInt(resolver, "screen_brightness", brightness); resolver.notifyChange(uri, null); } // 开启自动调光模式 public void startAutoBrightness() { ContentResolver resolver = mContext.getContentResolver(); Settings.System.putInt(resolver, Settings.System.SCREEN_BRIGHTNESS_MODE, Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC); Uri uri = android.provider.Settings.System .getUriFor("screen_brightness"); resolver.notifyChange(uri, null); } // 关闭自动调光模式 public void stopAutoBrightness() { ContentResolver resolver = mContext.getContentResolver(); Settings.System.putInt(resolver, Settings.System.SCREEN_BRIGHTNESS_MODE, Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL); Uri uri = android.provider.Settings.System .getUriFor("screen_brightness"); resolver.notifyChange(uri, null); } // 获得当前屏幕亮度 public int getScreenBrightness() { int nowBrightnessValue = 0; try { ContentResolver resolver = mContext.getContentResolver(); nowBrightnessValue = android.provider.Settings.System.getInt( resolver, Settings.System.SCREEN_BRIGHTNESS); } catch (Exception e) { e.printStackTrace(); } return nowBrightnessValue; } // 设置光亮模式 public void setBrightnessMode(int mode) { Settings.System.putInt(mContext.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE, mode); } // 获得亮度模式 public int getBrightnessMode() { try { return Settings.System.getInt(mContext.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS_MODE); } catch (SettingNotFoundException e) { return Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC; } } }
相关文章推荐
- 与屏幕亮度调节相关的各种方法整理
- 与屏幕亮度调节相关的各种方法整理
- 【Android开发经验】与屏幕亮度调节相关的各种方法整理
- Android_调节屏幕亮度(背景灯)及保持背景灯常亮的方法
- Ubuntu12.04屏幕亮度调节方法汇总---总有一种方法适合你
- android 屏幕亮度调节方法详解
- win7屏幕亮度快速调节的方法(可降低眼疲劳)
- linux centos 6.7下屏幕亮度调节方法
- Android_调节屏幕亮度(背景灯)及保持背景灯常亮的方法 (转)
- Android_调节屏幕亮度(背景灯)及保持背景灯常亮的方法
- win7系统中怎么调节屏幕亮度方法介绍
- 怎么调整Win8.1屏幕亮度? 调节屏幕亮度的方法
- Toshiba笔记本运行FC5时屏幕亮度调节方法
- Ubuntu 10.04下无法调节屏幕亮度和改变启动界面分辨率的方法
- win8不能调节屏幕亮度解决方法
- win8不能调节屏幕亮度解决方法
- Win7无法调节屏幕亮度怎么办?win7系统调节屏幕亮度的方法
- Win8.1屏幕亮度自动调节关闭方法
- android屏幕亮度相关方法
- ubuntu12.04屏幕亮度调节设置方法