我正在创建一个简单的应用程序,从网络流式传输视频,但我现在想要更改代码,以便我可以从SDCard播放视频文件
原始代码:
Uri vidFile = Uri.parse("MY SITE HERE");
VideoView videoView = (VideoView) findViewById(R.id.VideoView);
videoView.setVideoURI(vidFile);
videoView.setMediaController(new MediaController(this));
videoView.start();
因此,请帮助我更改代码,以便它可以播放我的移动存储卡中的视频。
答案 0 :(得分:13)
videoView.setVideoURI(vidFile);
方法需要由videoView.setVideoPath(path);
方法替换。
此处path指定SDCARD
上的视频文件的路径。
可以使用该视频文件的MediaStore.Video.Media.DATA
属性轻松检索此路径,或者只是将歌曲路径静态输入为/sdcard/songname
。
答案 1 :(得分:6)
Uri vidFile = Uri.parse(
Environment.getExternalStorageDirectory().getAbsolutePath()+"filename");
...
其余代码将是相同的。
答案 2 :(得分:1)
取代
videoView.setVideoUri(vidFile)
使用
videoView.setVideoPath("/sdcard/SONG.")
。
让我知道。
答案 3 :(得分:0)
答案 4 :(得分:0)
我知道它很旧,但如果它可以提供帮助。将此添加到您的清单
<uses-permission android:name="com.android.externalstorage.ExternalStorageProvider"/>
答案 5 :(得分:-1)
我也尝试了你的代码并得到了相同的错误信息但是当我尝试使用路径或名称中没有空格的视频路径时,它运行良好。试一试吧。 例如, 文件路径“/ mnt / sdcard / Movies / Long Drive Song - Khiladi 786 ft.Akshay Kumar_Asin-YouTube.mp4” 给出了错误,但文件路径“/mnt/sdcard/Movies/Khiladi.mp4”效果很好。