我正在尝试通过小部件更新显示亮度,但我遇到了一些问题。
要更改亮度级别,我使用:
Settings.System.putInt(context.getContentResolver(),android.provider.Settings.System.SCREEN_BRIGHTNESS, 200);
这修改了显示设置(实际上在 Display->Brightness 级别是正确的)但是显示的有效亮度没有改变。如果我锁定屏幕并解锁,亮度最终会更改为我设置的值。
我假设这是一个设置更新问题,那么如何在设置更改后立即更新显示设置?
答案是 Update Display Brightness on Android after changing it programmatically
我读到 WindowManager.LayoutParams lp = getWindow().getAttributes();应该使用,但我在 App Widget 中工作,因此无法调用 getWindow()。
如何创建一个没有 UI 的 Activity 来实现 Appwidget 的亮度变化??
最佳答案
我在更改屏幕亮度方面遇到了同样的问题,我在这里发布了解决方案的完整代码:
https://stackoverflow.com/a/9848456/1204377
不过,我是从服务而不是小部件更改它的。但我仍然相信您也可以轻松调整我的代码以使用小部件。
关于android - 创建一个没有 UI 的 Activity 来在 Appwidget 中进行亮度更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9001703/