0

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

4

2 回答 2

2

尝试使用:

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();

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

于 2012-11-12T07:49:12.743 回答
0

可以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"/>
于 2012-11-12T08:15:38.857 回答