屏幕锁定后MediaPlayer重新启动

时间:2012-07-25 13:33:32

标签: android android-mediaplayer

我有一个MediaPlayer播放视频,一切正常,除非您锁定屏幕然后解锁,视频将重新启动。

目前我正在使用

    KeyguardManager keyguardManager = (KeyguardManager)getSystemService(Activity.KEYGUARD_SERVICE);
    KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE);
    lock.disableKeyguard();

它可以工作,但是如果您按下主页按钮,您将无法锁定屏幕,因为应用程序已将其关闭。您是否知道更好的方法来保持视频的进度而无需使用KeyGuardLock?

2 个答案:

答案 0 :(得分:4)

您只需在布局xml中的android:keepScreenOn=true上使用VideoView,而不是KeyGuard。

对于后一部分,您必须在onSaveInstanceState()中保存视频的进度,并在onRestoreInstanceState()中加载进度数据,而不是只在视频中使用seekTo(progress)包含您的数据刚回来。

另外,如果是新播放,请不要忘记在onRestoreInstanceState()中检查是否为空。

答案 1 :(得分:0)

你在哪里开始你的媒体播放器播放视频(mvideo.start)。它是在onCreate方法还是onRestart方法?如果您使用代码更新您的问题以解决此问题,那将会很有帮助。