Android Studio中VideoView播放视频提示‘无法播放此视频’解决咨询
解决VideoView播放raw资源视频提示“无法播放此视频”的问题
嘿,我瞅着你这段代码里有几个小疏漏,刚好是导致视频播不了的原因,咱们一步步来搞定:
首先修正代码里的关键错误
- 资源路径拼写错误:你写的
android.resourse://少了个字母c!正确的路径前缀应该是android.resource:// - 播放顺序搞反了:你先调用了
start(),之后才设置MediaController,应该先把控制器配置好再启动播放,而且你还重复调用了两次videoView.start(),这也会干扰播放流程 - 建议加上错误监听:方便后续排查其他可能的播放问题
修正后的完整代码如下:
VideoView videoView = findViewById(R.id.videoView); // 修正资源路径的拼写错误 String videoPath = "android.resource://" + getPackageName() + "/" + R.raw.video; videoView.setVideoPath(videoPath); // 先配置MediaController再启动播放 MediaController mediaController = new MediaController(this); mediaController.setAnchorView(videoView); videoView.setMediaController(mediaController); // 添加错误监听,方便排查问题 videoView.setOnErrorListener((mp, what, extra) -> { Log.e("VideoPlayError", "错误码:" + what + ",额外信息:" + extra); return false; }); videoView.start();
额外排查点(如果修正后还是播不了)
- 视频格式兼容性:Android的VideoView只支持有限的格式,优先用MP4(编码为H.264/H.265)、3GP、WMV这类标准格式,别用MKV、FLV这种不兼容的格式
- 文件名规范:raw目录下的视频文件名必须是小写字母、数字、下划线的组合,不能有大写字母、空格或者特殊符号(比如
video_test.mp4是合规的,Video Test.mp4就会出问题)
内容的提问来源于stack exchange,提问作者Siddharth Agarwal




