Video Player每次都不播放视频

时间:2012-03-30 08:13:22

标签: android android-video-player

我正在开发一个必须使用Android视频播放器的应用程序。我给这个播放器一个URI,有时运行,有些时间不运行。根据定义的过程在运行时生成URI。

当视频无法播放时,我在logcat中收到以下错误。

03-30 12:58:42.918: D/MediaPlayer(4948): Couldn't open file on client side, trying server side
03-30 12:58:43.516: E/MediaPlayer(4948): error (1, -1004)
03-30 12:58:43.516: E/MediaPlayer(4948): Error (1,-1004)
03-30 12:58:43.520: D/VideoView(4948): Error: 1,-1004

我无法理解这个错误。如果有人能向我解释这个问题。这是我的(VideoPlayer)端或服务器端的问题.. ???

我用于视频播放器的代码如下:

    String url = getIntent().getExtras().getString("videourl");
    VideoView videoView = (VideoView) findViewById(R.id.videoview);
    MediaController mediaController = new MediaController(this);
    mediaController.setAnchorView(videoView);
    Uri video = Uri.parse(url);
    videoView.setMediaController(mediaController);
    videoView.setVideoURI(video);
    videoView.start();

更重要的是,当没有播放视频时,我会看到一个错误对话框,显示:

“对不起!此视频无法播放。”带有“确定”按钮。当我按下按钮时,视图不会弹回我应用程序的上一个窗口,而是保留在VideoPlayer屏幕上,我必须按两次后退按钮才能返回上一个视图。为什么会这样.. ???任何对解释问题的帮助都非常感激。

1 个答案:

答案 0 :(得分:4)

表单日志-1004表示: public static final int MEDIA_ERROR_IO

对我来说,这总是有效:

    Uri video = Uri.parse(url);
    mediaController = new MediaController(this);
    mediaController.setAnchorView(videoView);
    videoView.requestFocus();
    videoView.setMediaController(mediaController);
    videoView.setVideoURI(video);

    videoView.setOnPreparedListener(new OnPreparedListener()
    {

        @Override
        public void onPrepared(MediaPlayer arg0)
        {
            videoView.start();
        }
    });
相关问题