基于eclipse的android项目实战—博学谷(十 八)关于视频播放问题


相信经过了这么长时间,小伙伴们应该都发现了博学谷这个项目存在问题,播放视频的时候,无论播放任何一个章节,他播放的视频都只是一个,也就是VideoPlayActivity.java里面写死的那个(myvideo_1.mp4):

String uri = "android.resource://" + getPackageName() + "/" + R.raw.myvideo_1;

其实从视频列表界面VideoListActivity.java传递过来的地址视频是可以接收到的,而且也可以写在视频路径上面,如下:

String uri = "android.resource://" + getPackageName() + "/" + videoPath;

它无法识别播放videoPath里面的视频,就算把videoPath里面的视频名称改为R.raw.myvideo_1,也无法播放,错误截图如下:

在这里插入图片描述
在这里插入图片描述
第二个图里面的路径跟写死的一模一样,但是它不能播放。
哈哈,欢迎各位大佬在评论区帮我解决问题


写这篇文章当然不是写出问题就结束了,这里我弄出了另外一个解决方法,我来分享一下,希望对你有所帮助。

安卓播放视频的方式:

		//加载指定的视频文件
        String path = Environment.getExternalStorageDirectory().getPath()+"/20180730.mp4";
        videoView.setVideoPath(path);
 
        //创建MediaController对象
        MediaController mediaController = new MediaController(this);
 
        //VideoView与MediaController建立关联
        videoView.setMediaController(mediaController);
 
        //让VideoView获取焦点
        videoView.requestFocus();

既然它能接收每个章节的数据,那我们就将它改了可以播放网络视频

1、先将视频地址改为网络视频地址:

打开assets目录里面的data.json文件,在里面添加网络视频地址:

"videoPath": "http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"

每一个都改,将路径改为网络地址

2、修改播放视频界面的逻辑代码VideoPlayActivity.java

直接在private void play()里面设置加载的videoPath里面的视频路径:

videoView.setVideoPath(videoPath);

然后就可以播放不同的视频啦

演示地址:https://www.weiyun.com/video

http://cms.20200813_190618%20(2).mp4

你可能感兴趣的:(Android,android,安卓)