大家好我碰到与VideoView另一个问题。 然后,在播放视频时,我把设备睡着了,使用硬按键,onPause()被调用。但它跟:

03-17 11:26:33.779: WARN/ActivityManager(884): Activity pause timeout for HistoryRecord{4359f620 com.package/com.package.VideoViewActivity}

然后我再有onStart() / onResume()和视频开始播放。我尝试移动代码周围onStart() / onStop() - 似乎并不做差异

示例代码:

public class VideoViewActivity extends Activity {


    private String path = "";
    private VideoView mVideoView;
    private static final String MEDIA_URL = "media_url";

    @Override
    public void onCreate(Bundle icicle) {

        super.onCreate(icicle);
        setContentView(R.layout.videoview);
        mVideoView = (VideoView)findViewById(R.id.surface_view);
        path = getIntent().getStringExtra(MEDIA_URL);
    }

    @Override
    public void onResume() {

        super.onResume();
        mVideoView.setVideoPath(path);
        mVideoView.setMediaController(new MediaController(this));
        mVideoView.requestFocus();
        mVideoView.start();
    }

    @Override
    public void onPause() {

        super.onPause();
        mVideoView.stopPlayback();

        mVideoView.setMediaController(null);
    }
}

为什么会发生?我如何停止?

这不是比你把你的设备睡觉的最大的体会,并开始播放视频

有帮助吗?

解决方案

OK,貌似行为与活动的生命周期和VideoViewActivity被设置为横向清单中的事实。添加

android:configChanges="keyboardHidden|orientation" 

有关该活动 似乎解决问题,然后你把设备只睡的onPause()称为VS前 - 被执行的所有生命周期方法。 我会做更多的测试,以确保它的固定...

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top