主要功能
列表中播放视频
列表滑动时若是正在播放视频,则列表中播放的视频自动切换为小窗口浮动播放
列表播放切换到全屏播放模式
视频播放时也添加了完整的暂停、播放等控制操做,也添加了视频播放进度,视频缓冲进度等显示功能
视频全屏播放时支持左右滑动实现视频的快进和后退,支持右边上下滑动调整播放音量,左边上下滑动调整播放器的亮度等手势控制操做
主要使用的开源库
Mosby[一个MVP框架]、RxJava、Retrofit二、ButterKnife、Glide、Systembartint、TigerDB、Material Design相关控件框架
播放器
播放器采用Android中自带的TextureView + MediaPlayer实现,同时视频播放过程当中由于涉及到列表、小窗口、全屏续播等问题,因此整个视频播放过程当中,播放器采用的是全局单例模式实现,这样就能够达到无缝切换续播的问题
切换到全屏播放时,是直接从新开启一个横向的Activity来实现全屏播放
APP实现效果图
ide