You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio离线播放本地视频报错(1, -2147483648)求助

解决Android VideoView播放raw资源视频报错(1, -2147483648)

错误原因分析

这个错误通常和以下几点有关:

  • 视频格式/编码不被Android系统支持
  • 资源路径写法不正确
  • 视频文件损坏或导入不完整

解决方案

1. 确认视频格式兼容性

Android原生MediaPlayer支持的视频格式有限,优先使用**MP4(H.264视频编码 + AAC音频编码)**格式。如果你的视频不是这个格式,用转码工具(比如HandBrake)重新编码后再导入到res/raw文件夹。

2. 修正资源路径与加载方式

你的代码中使用setVideoPath加载资源Uri可能存在解析问题,改用setVideoURI并正确构造资源Uri:

VideoView v1 = findViewById(R.id.vv1);
// 构造正确的资源Uri
Uri videoUri = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.video1);
v1.setVideoURI(videoUri);

MediaController mc = new MediaController(this);
v1.setMediaController(mc);
mc.setAnchorView(v1);

// 添加错误监听,获取更详细信息
v1.setOnErrorListener(new MediaPlayer.OnErrorListener() {
    @Override
    public boolean onError(MediaPlayer mp, int what, int extra) {
        Log.e("VideoError", "Error code: " + what + ", extra: " + extra);
        return false;
    }
});

v1.start();

3. 检查视频文件完整性

  • 删除res/raw中的视频文件,重新导入,确保导入过程中没有中断或文件损坏。
  • 直接在电脑上播放该视频,确认文件本身可以正常播放。

4. 确保布局中的VideoView配置正确

检查activity_maths_chap1.xml中的VideoView是否有正确的宽高设置,避免因尺寸问题导致播放失败:

<VideoView
    android:id="@+id/vv1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />

内容的提问来源于stack exchange,提问作者Arooba Siddiqui

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 02:50:42