所以,很长一段时间我以为我知道如何阻止屏幕进入睡眠模式,我只是在我的Activity中使用了这段代码:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
然而,我意识到这只适用于我的手机处于“开发者模式”时,即启用/检查USB调试(设置 - >开发者选项 - > USB调试)时。然后上面的代码确实阻止屏幕/设备进入睡眠状态。
当没有检查那个调试时,我的屏幕会像没有明天一样进入睡眠状态。我在我的设备上运行Android 4.04,并且
android:minSdkVersion="12"
android:targetSdkVersion="16"
有人听说过这个问题吗?
修改
我已经使用Commonswares建议进行了测试,并将setKeepScreenOn()添加到代码中,所以它看起来像这样:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
View root = findViewById(android.R.id.content);
if (root != null)
root.setKeepScreenOn(true);
我也检查过这个代码实际执行了,确实如此。但它并没有改变一件事......
答案 0 :(得分:1)
我遇到同样的问题,我正在为我的项目使用一个活动而所有其他屏幕都是片段,然后我在主要活动中使用了android:keepScreenOn="true"
。
请尝试使用此功能,如果您没有得到您想要的结果,请告诉我。
感谢。