以编程方式禁用屏幕超时

时间:2011-08-18 17:16:09

标签: android

从这篇帖子Android disable screen timeout while app is running,我可以通过

禁用屏幕超时
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

我的问题是我是否通过

安全地启用了屏幕超时
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

2 个答案:

答案 0 :(得分:0)

您是否只是希望在关闭应用程序后屏幕超时?或者您的应用程序内部是否会重置屏幕超时,以便即使在您的应用程序运行时也会发生这种情况?

如果前者我认为你不需要做任何事情,当你的应用程序被停止时,屏幕超时将恢复正常。

如果后者看起来像你提供的片段就行了。但我没有经验,所以我无法确定。

答案 1 :(得分:0)

是的,这将有效 - 这是我在PocketSat3中的方式,虽然我没有切换FLAG_FULLSCREEN(当然,那说 - 该应用程序不使用FLAG_FULLSCREEN ...)

与使用WakeLock不同,这样做不需要任何权限 - 虽然我不得不承认我并不完全清楚这是一件好事。