4

浏览 2009 年的日志,似乎每个人都在抱怨这不是一个选择。

现在我发现的只是人们告诉人们不同的方法来做这件事,但这些方法在我的设备上都不起作用。keepScreenOn 或其在 LayoutParams 中的相应标志仅用于保持屏幕打开,即使有多个人提供它作为屏幕调暗的解决方案。

另一方面,WakeLocks(正如我在网上看到的那样)似乎完全没有做任何事情,甚至没有让屏幕保持活力。屏幕在正常情况下会变暗,我什至可以在笔记本电脑上运行的显示器上看到这个有趣的小数字:

02-04 00:10:30.687: D/PowerManagerService(192): @PowerManagement: 'MyActivitiyName' releaseWakeLock when screen locked

我确保遵循此页面上的所有唤醒锁说明:http: //blog.blundell-apps.com/tut-keep-screen-onawake-3-possible-ways/

没有构建错误,也没有运行时错误。在标准时间范围内,屏幕只是变暗然后关闭。

帮助?

4

2 回答 2

2

尝试在 onCreate() 方法中添加以下语句。希望这会奏效。

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

于 2013-07-29T22:27:30.947 回答
1

好的,我对标志很愚蠢,太盲目地遵循教程。我假设示例唤醒锁标志应该使屏幕不暗,但事实恰恰相反。我将唤醒锁标志切换为

PowerManager.SCREEN_BRIGHT_WAKE_LOCK

并将唤醒锁获取和释放移动到 onCreate 和 onDestroy,现在它可以满足我的要求。

(要清楚,这是我想要的,因为当前活动是我的演示所需的最终状态;只要我可能想暂停活动,就应该调用 onDestroy)

于 2013-07-30T13:40:35.850 回答