博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android通过VideoView实现视频播放
阅读量:6687 次
发布时间:2019-06-25

本文共 1124 字,大约阅读时间需要 3 分钟。

在Android系统中,是通过MediaPalyer类播放媒体文件的(包括视频和音频)。虽然这个类已经比较简单了,但是还需要控制各种状态,对于视频还需要设置输出窗口,还是需要仔细研究的。为了避免这些麻烦事儿,Android框架提供了VideoView类来封装MediaPalyer,这个VideoView类非常好用。Android自带的程序Gallery也是用VideoView实现的。本文以实例介绍怎样用VideoView来实现VideoPlayer,本文也参考了Android自带程序Gallery的实现。

创建一个VideoPlayer的工程。main.xml文件如下:

1 
2
7
11

VideoPlayer.java文件如下:

View Code

本例中只是播放外存储器(一般是sd卡)上的1.3gp文件。在onCreate方法中创建了Media control,这个组件可以控制视频的播放,暂停,回复,seek等操作,不需要你实现。

1 mMediaController = new MediaController(this); 2 mVideoView.setMediaController(mMediaController);

然后只需要调用VideoView类的setVideoURI设置播放文件,start方法开始播放即可。 为了节省系统资源,一般需要在Activity的onPause方法中,暂停视频的播放。因为Activity已经不在前台了。在Activity的onResume中恢复视频的播放,因为这是Activity又变成前台程序了。不清楚的朋友可以去查看Activity lifecycle。 你可以通过实现MediaPlayer.OnErrorListener来监听MediaPlayer上报的错误信息。实现MediaPlayer.OnCompletionListener接口,将会在Video播完的时候得到通知,本例只是简单的结束程序。 你可能注意到,我们没有管理MediaPalyer的各种状态,这些状态都让VideoView给封装了,并且,当VideoView创建的时候,MediaPalyer对象将会创建,当VideoView对象销毁的时候,MediaPlayer对象将会释放。这样基本可以傻瓜式的实现媒体播放器了,太Easy了吧。

本文转自天天_byconan博客园博客,原文链接:http://www.cnblogs.com/tiantianbyconan/articles/2375567.html
,如需转载请自行联系原作者
你可能感兴趣的文章
我为什么关注node.js
查看>>
3.3. Forms
查看>>
如何设置Windows 8开始画面中瓷贴最大行数
查看>>
Irrlicht引擎使用2之中文显示
查看>>
架构设计-业务逻辑层简述
查看>>
Repcached介绍
查看>>
LGPL与闭源程序
查看>>
路由器PPPOE拨号配置
查看>>
JavaScript中的click()方法在JSF中的应用
查看>>
【聚能聊话题】有“一个女程序媛征男友的需求说明书”等你的回复
查看>>
shell中if的讲解及注意事项
查看>>
java正则表达式 --简单认识
查看>>
屏蔽优酷广告
查看>>
第六章--定时测量
查看>>
使用Silverlight Streaming托管Silverlight应用程序
查看>>
WCF分布式开发常见错误(23):the fact that the server certificate isn't configured with HTTP.SYS...
查看>>
第一个Indigo Service
查看>>
《Pro ASP.NET MVC 3 Framework》学习笔记之三十二 【无入侵的Ajax】
查看>>
监听启动报TNS-12537、TNS-12560错误
查看>>
安腾还是Power7——Unix服务器你该如何选?
查看>>