[英]Is there a way to limit the time the screen is on with FLAG_KEEP_SCREEN_ON on Android?
如果您在此处阅读文档: docs
比您看到的,您不必为此照顾。 但是您可以看到:
注意:您不需要清除FLAG_KEEP_SCREEN_ON标志,除非您不再希望屏幕停留在运行的应用程序中(例如,如果您希望屏幕在一段时间不活动后超时)。 窗口管理器负责确保当应用程序进入后台或返回到前台时,正确的事情发生。 但是,如果要显式清除该标志并从而允许屏幕再次关闭,请使用clearFlags():getWindow()。clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)。
您可以结合使用Runnable ,在Handler上延迟发布 (这是Android的方式)或与TimerTask(这更像是Java的方式)结合使用。
例:
final long FIVE_MINUTES = 1000*60*5;
Handler handler = new Handler();
final Runnable r = new Runnable() {
public void run() {
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
};
handler.postDelayed(r, FIVE_MINUTES);
希望能帮助到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.