我正在尝试弄清楚如何从服务中关闭屏幕。我已经读过 this但我没有意识到如何从服务中做到这一点。我真的不想处理唤醒锁,因为一旦屏幕关闭,我真的不在乎通过 Java 代码将其恢复。我只需要一种关闭屏幕的一次性方法,我一直在搜索这个。
最佳答案
我看到两个选项:
(1) 创建一个虚拟的 Activity
并使用它通过 getWindow();
方法获取一个 Window
对象。然后,您将使用 Intent
从您的 Service
中关闭屏幕。
(2) 使用IHardwareService.Stub
。不是 SDK 的一部分,但这篇博文中有一个解决方法:http://www.tutorialforandroid.com/2009/01/changing-screen-brightness.html
顺便说一句:我强烈推荐第一个选项。您永远不知道不属于 SDK 的类何时会发生变化。
关于Android:从服务关闭屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5917192/