【发布时间】:2017-08-16 09:51:19
【问题描述】:
我有一项服务可以检测特定系统事件,例如一天中的特定时间。我希望我的服务(当满足条件时)使用户屏幕变暗。
到目前为止,通过互联网和 StackOverflow,我发现了很多依赖“getWindow()”的解决方案,这意味着我的应用必须有一个正在运行的前台活动才能实现这一点。
如果我只有一项服务应该将系统范围的屏幕亮度设置为 30%,那么需要做什么?我认为这与“本地”更改亮度(仅针对我自己的应用)非常相似。
我的想法是获得当前前台应用程序的“窗口”,但我不太确定这是否可能:\
谁能给我一些提示或帮助,我所有的搜索都以“你需要调用你自己的应用程序的“getWindow()”结尾吗?
【问题讨论】:
-
屏幕整体亮度可以控制via
SCREEN_BRIGHTNESS。如果是这样,原则上,如果您持有WRITE_SYSTEM_SETTINGS权限,则可以更改它。但是,这不是一个容易获得的权限,而且您将覆盖用户的正常亮度控制。