我有一个应用程序,可以使用 4 个小时,但用户只需每 5 分钟需要进行一次输入或阅读屏幕。让手机进入睡眠状态并锁定屏幕有点烦人。所以我有两个选择:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
它不会锁定屏幕,但屏幕始终很亮,我想在没有活动时将其调暗。只是因为电池寿命,还是这 4 小时并不那么重要?
唤醒锁SCREEN_DIM_WAKE_LOCK
这符合我的要求,但我被告知应该使用上面的选项 1。
我可以在没有唤醒锁的情况下以某种方式实现想要的吗?
您可以使用:
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.dimAmount=1.0f;
getWindow().setAttributes(lp);
当您需要时可以调暗/取消调暗屏幕。
lp.dimAmount=1.0f
将使屏幕完全变暗,但您可以根据自己的意愿将其设置为 0(根本不变暗)到 1.0f 的值。
您可以设置一个计时器,在 5 分钟不活动后调用此计时器,然后在发生任何触摸事件或类似事件时“重新打开”屏幕。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)