本文实例讲述了Android播放assets文件里视频文件相关问题。分享给大家供大家参考,具体如下:
今天做了一个功能,就是播放项目工程里面的视频文件,不是播放SD卡视频文件。
我开始尝试把视频文件放到 assets文件目录下。
因为之前写webview加载assets文件夹时,是这样写的:
webView = new WebView(this);
webView.loadUrl(file:///android_asset/sample3_8.html);
依次类推,我尝试将视频video.3gp 放到assets目录下,然后写了下面的代码:
Intent it = new Intent(Intent.ACTION_VIEW);
Uri uri = Uri.parse(name);
it.setDataAndType(uri ,"video/3gp);
startActivity(it);
启动了Android系统播放器,提示了一些信息(没有记录下来),大概意思就是无法播放这个路径下面的文件/无法找到这个路径文件。
google了一下,中文网页上几乎没有解决办法的说明,按照惯例,去 http://stackoverflow.com 搜索答案,找到了这个帖子:
I want to play a video from my assets or raw folder in my app inANDROID
播放Android项目工程里的视频文件最终解决办法是:
1. 把视频文件放到项目工程的 res/raw 文件下。
2.视频文件必须是Android支持视频格式(3gp,wmv,mp4),并且命名必须是小写字母,数据,下划线,例如:my_video_file.mp4
3. 当你是在代码里面引用这个资源文件时,你必须使用Rstatics类,同时去掉文件的后缀:R.raw.my_video_file
4. 这个Activity class 应该有一个 helper 方法getPackageName(),这样便于你在你的代码里面构造正确的URI。
VideoView vv = (VideoView)this.findViewById(R.id.videoView);
String uri = "android.resource://" + getPackageName() + "/" + R.raw.my_video_file;
vv.setVideoURI(Uri.parse(uri));
vv.start();
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android多媒体应用开发技巧汇总》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
您可能感兴趣的文章:读写Android中assets目录下的文件的方法详解Android获取assets文件夹中的数据并写入SD卡示例android读取assets文件示例基于android中读取assets目录下a.txt文件并进行解析的深入分析Android操作存放在assets文件夹下SQLite数据库的方法Android编程读取Assets所有文件(遍历每一个文件夹)并存入sdcard的方法android文件操作——读取assets和raw文件下的内容Android 加载assets中的资源文件实例代码Android 读取assets和raw文件内容实例代码Android 中raw和assets文件夹的区别Android API编程之Assets文件操作示例Android开发实现读取Assets下文件及文件写入存储卡的方法