You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Android Studio中VideoView播放视频提示‘无法播放此视频’解决咨询

解决VideoView播放raw资源视频提示“无法播放此视频”的问题

嘿,我瞅着你这段代码里有几个小疏漏,刚好是导致视频播不了的原因,咱们一步步来搞定:

首先修正代码里的关键错误

  1. 资源路径拼写错误:你写的android.resourse://少了个字母c!正确的路径前缀应该是android.resource://
  2. 播放顺序搞反了:你先调用了start(),之后才设置MediaController,应该先把控制器配置好再启动播放,而且你还重复调用了两次videoView.start(),这也会干扰播放流程
  3. 建议加上错误监听:方便后续排查其他可能的播放问题

修正后的完整代码如下:

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

火山引擎 最新活动