亲爱的安卓迷们,今天我要和你聊聊一个超级实用的话题——安卓系统播放视频控件!是不是觉得视频播放控件平平无奇,其实不然,它可是我们观看视频的好帮手哦!接下来,就让我带你全方位了解安卓系统中的这些小家伙吧!
一、安卓系统自带VideoView控件
说起视频播放控件,不得不提的就是安卓系统自带的VideoView控件。这个控件简单易用,功能强大,简直就是小白玩家的福音!
1. 创建步骤
(1)首先,你需要将视频文件放入res/raw文件夹下。这样,系统就能轻松找到它啦!
(2)接下来,声明并初始化VideoView控件。在布局文件中,你可以这样写:
```xml
android:id=\@+id/videoView\ android:layout_width=\match_parent\ android:layout_height=\match_parent\ /> (3)创建视频文件Uri路径。使用Uri调用parse()方法,传入以下字符串获取资源路径: android.resource://你的包名/R.raw.video (4)为视频控件设置播放路径。调用VideoView对象的setVideoURI()方法,传入Uri对象。 (5)开始播放!调用VideoView对象的start()方法,视频就会自动播放啦! 2. 自定义宽高 如果你想让VideoView控件拥有个性化的宽高,可以重写控件onMeasure()方法。通过MeasureSpec对象调用getSize()方法,传入widthMeasureSpec和heighMeasureSpec常量,获取屏幕宽度和高度。调用setMeasuredDimension()方法,传入宽度和高度设置控件的宽度和高度。 3. 控制方法 - start():从当前位置启动视频; - pause():暂停视频; - isPlay():判断当前视频是否在播放; - getDuration():获得当前播放视频的总时长(单位:毫秒); - getCurrentPosition():获得当前视频播放时长(单位:毫秒)。 4. 监听事件 - setOnPreparedListener:当视频准备就绪时,会触发此监听事件。 二、dkplayer——安卓视频播放器 除了系统自带的VideoView控件,还有许多第三方视频播放器可供选择。其中,dkplayer是一款非常受欢迎的安卓视频播放器。 1. 依赖 在项目中添加RecyclerView、异步加载图片、上拉刷新、下来加载等依赖包后,再添加dkplayer依赖。 ```xml dependencies { implementation 'com.github.Doikki:DKVideoPlayer:最新版本' 2. 工具类 - 播放器列表播放、无缝播放、画中画; - 获取当前的播放核心; - 将View从父控件中移除。 三、MediaPlayer——安卓播放视频的利器 MediaPlayer是安卓系统中用于播放视频和音频的类。它功能强大,支持多种格式,是安卓视频播放的基石。 1. 调用start播放前,要异步线程调用prepare方法准备。系统封装了prepareAsync方法,本身就是异步的,但需要增加监听器setOnPreparedListener,在监听器中的onPrepared方法中调用start开始播放。 2. 调用start播放后,只有声音,并没有画面。官方文档中也没有提到怎么显示画面,需要给MediaPlayer设置显示画面的控件,即setSurface。布局文件xml控件是TextureView,另外,TextureView未初始化完成或者未attached到window就设置到MediaPlayer中是会报错的,所以也是设置一个监听器,监听控件可用后再操作。 四、JieCaoVideoPlayer——安卓视频播放的终极状态 JieCaoVideoPlayer是一款功能强大的安卓视频播放控件,被誉为安卓视频播放的终极状态。 1. 主要特点 - 视频全屏播放和浮层小窗播放; - 可以完全自定义UI; - 能在WebView嵌套本地视频控件; - 支持https和rtsp; - 小于110KB; - Home键暂停,返回继续播放。 2. 使用方法 (1)添加类库:在项目中添加JieCaoVideoPlayer依赖。 (2)添加布局:在布局文件中添加JieCaoVideoPlayer控件。 (3)设置视频地址、缩略图地址、标题。 (4)在Activity中设置播放器。 (5)在Fragment中设置播放器。 3. 常规使用 - 列表播放; - 小窗播放; - 直接全屏播放; - 自定义。 五、 通过本文的介绍,相信你对安卓系统播放视频控件有了更深入的了解。无论是系统自带的VideoView控件,还是第三方播放器dkplayer、MediaPlayer、JieCaoVideoPlayer,它们都能满足你的视频播放需求。希望这篇文章能帮助你更好地选择和使用这些控件,让你的安卓