Ale*_*lex 31 android android-activity
我有一个Activity
通常需要一些时间来观看屏幕而不与它交互.
问题是屏幕关闭,就像almos任何其他应用程序一样.我想防止我的自动关闭Activity
,就像Dolphin HD一样(如果你从设置菜单配置它).
我想让用户按下常用的块按钮来关闭屏幕,但是在我的时候阻止设备的自动阻止Activity
.
我怎样才能做到这一点?
感谢名单.
Com*_*are 80
添加android:keepScreenOn="true"
到此活动的布局XML资源中的某个窗口小部件.只要该小部件在屏幕上可见,屏幕就不会自动关闭.
编辑:
A WakeLock
,正如其他答案所建议的那样,从技术上讲也是可行的.但是你必须手动释放WakeLock
(如果你搞砸了,屏幕会长时间停留).而且,既然你可能搞砸了,你需要得到WAKE_LOCK
许可.使用keepScreenOn
避免所有这些.
noe*_*cus 31
要动态更改它,请执行以下操作:
if (keepScreenOn)
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
else
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
Run Code Online (Sandbox Code Playgroud)
Android 文档“保持设备唤醒”概述了每个解决方案。
文档 -使用唤醒锁的替代方案
对于Fragment,请使用电池消耗较少的编程方法。
activity!!.window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
activity!!.window.clearFlags(LayoutParams.FLAG_KEEP_SCREEN_ON)
对于我的用例,我调用了它,onStop()
以便当显示媒体内容的片段退出时,屏幕将默认为正常配置。
keepScreenOn=true
当配置发生更改(例如片段的屏幕旋转)时不起作用。
注意: Android 的保持设备唤醒文档应相应更新以处理这种情况。
文档 -使用唤醒锁保持 CPU 开启
唤醒锁可以更好地控制保持设备的特定元素处于唤醒状态,但会消耗更多电量,并且需要手动释放以节省电池,因为它不是由系统自动处理的。
归档时间: |
|
查看次数: |
43960 次 |
最近记录: |