如何避免安卓屏幕黑屏



我开发了一个视频播放器应用程序。该应用程序将继续播放视频(并重复播放)。我想在播放时处理它,所以我需要视频一直播放,但 android 系统会自动使屏幕变黑、锁定屏幕或使系统进入睡眠状态。我想知道如何避免这种情况发生,即我的程序应该继续播放视频并且屏幕不应该变黑。我在互联网上找到了一些解决方案,但仍然不起作用,感谢您的帮助。

尝试使用:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

或只是:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

编辑: 根据此链接:如何防止Android设备以编程方式进入睡眠状态?您应该使用:

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
wl.acquire();
..screen will stay on during this section..
wl.release();

您还需要确保在清单中设置了WAKE_LOCK权限。

您可以使用

PowerManager来避免系统休眠

如何使用电源管理器

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "My Tag");

应用程序恢复或启动时

protected void onResume()
{
     wl.acquire();
     super.onResume();
}

onPause()您应该释放唤醒锁,以避免耗尽更多电池

protected void onPause()
{
   wl.release();
   super.onPause();
}

最后,不要忘记许可

<uses-permission  android:name="android.permission.WAKE_LOCK"/>

最新更新