VideoView意外错误:视频无法播放

时间:2011-07-19 13:39:24

标签: android android-mediaplayer media android-videoview mp4

我有一个将String传递给下一个活动的主活动,下一个活动使用该String作为URL来打开视频。但是,视频无法播放。

以下是我的代码示例:

Bundle extras = getIntent().getExtras();
String MovieLink = (String) extras.get("video");
System.out.println(MovieLink);
VideoView videoView = (VideoView) findViewById(R.id.video);
MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(videoView);
Uri video = Uri.parse(MovieLink);
videoView.setMediaController(mediaController);
videoView.setVideoURI(video);
videoView.start();

并给出错误:

07-19 15:31:21.857: INFO/StagefrightPlayer(85): setDataSource('landscape_1003_1_m601')
07-19 15:31:21.867: ERROR/MediaPlayer(10132): error (1, -2147483648)
07-19 15:31:21.907: ERROR/MediaPlayer(10132): Error (1,-2147483648)
07-19 15:31:21.907: DEBUG/VideoView(10132): Error: 1,-2147483648
07-19 15:31:22.347: INFO/ActivityManager(126): Displayed com.?.?/.VideoPlayer: +540ms

1 个答案:

答案 0 :(得分:2)

解决了我的问题,最后!!

这是我的结果代码:)

super.onCreate(savedInstanceState);
    setContentView(R.layout.video);

    Resources res = getResources();

    Bundle extras = getIntent().getExtras();
    String MovieLink = (String) extras.get("video");
    VideoView vd = (VideoView) findViewById(R.id.video);
    String tmp = MovieLink.replace(".mp4", "");
    int movieID = res.getIdentifier(tmp, "raw", getPackageName());
    Uri uri = Uri.parse("android.resource://" + getPackageName() + "/"
            + movieID);
    MediaController mc = new MediaController(this);
    vd.setMediaController(mc);

    vd.setVideoURI(uri);
    vd.start();