webview和H5来实现的android短视频(短剧)音视频播放依赖控件

短视频尤其短剧的爆火关于音视频方面的需要越来越多,相关的框架、三方依赖技术也越来越成熟,本篇文章也是基于当前短剧高需要的背景来撰写,相信不少开发者也研究开发了相关的类库,也对此写了很多文章,当然我也是其中一位,本篇文章是基于android来进行短视频的加载播放的。

本篇文章介绍的依赖库是基于android webview和H5来实现的,实现主要功能:

1、全屏/小屏视频的单个(或多个连续)播放;

2、播放下一个视频;

3、横屏-竖屏切换;

4、音量调节[0,1];

5、视频播放速度调节;

6、视频播放进度及左右滑动(或进度条)来调节播放进度;

7、片尾可控制加载广告等延时播放下一条视频的操作;

8、暂停可控制加载广告等操作;

9、添加除视频的其他模块布局内容。

功能中大部分都已经封装好,不需要使用者再度进行开发操作,开发者可以设置返回按钮、视频标题、进度条样式、播放/暂停图标、横屏/竖屏图标、下一个图标,开发者可以使用依赖控件的中的布局进行广告等延时操作。

以下是依赖控件的示例视频:

ds-CSDN直播

依赖使用操作:

https://download.csdn.net/download/qq_41294019/90167109

在上面链接下载依赖到本地,在androidstudio中app的build.gradle里面添加如下:

复制代码
api fileTree(dir: 'libs', include: ['ProScreenMediaPlayer.aar'])

新建Activity继承ProScreenMediaPlayerActivity并实现其中的方法,如下就可以简单的实现一个只有视频播放的模块了,视频可以是全屏(竖屏/横屏)的,小屏视频可以添加推荐等模块的布局内容。

finishMediaPlayer() 该方法用于点击返回按钮退出当前页面。

复制代码
class ProScreenShowActivity : ProScreenMediaPlayerActivity() {

    override fun initData() {

          var videoPath = (Environment.getExternalStorageDirectory().absoluteFile.absolutePath
                + File.separator + Environment.DIRECTORY_DCIM
                + File.separator + "Camera/")

        videoUrls = arrayListOf<String>("${videoPath}SVID_20241219_184142_2.mp4","${videoPath}SVID_20241219_184142_3.mp4","${videoPath}SVID_20241219_184142_4.mp4","${videoPath}SVID_20241219_184142_1.mp4")

        videoUrlFirst = videoUrls[3]

        videoTitles = arrayListOf<String>("示例设置标题一","示例设置标题二","示例设置标题三","示例设置标题四")

    }

    override fun finishMediaPlayer() {

    }


}

使用doLoadAdView()来获取FrameLayout布局加载广告等延时操作,结束后需要调用reqPlayNextVideo()方法播放下一个视频,使用doLoadOtherContView()来加载除视频等其他的内容,如推荐列表。

以上就是本篇介绍的基于android短视频(短剧)的音视频播放内容。

相关推荐
安卓开发者1 小时前
Android RxJava 组合操作符实战:优雅处理多数据源
android·rxjava
阿华的代码王国1 小时前
【Android】RecyclerView复用CheckBox的异常状态
android·xml·java·前端·后端
一条上岸小咸鱼1 小时前
Kotlin 基本数据类型(三):Booleans、Characters
android·前端·kotlin
Jerry说前后端1 小时前
RecyclerView 性能优化:从原理到实践的深度优化方案
android·前端·性能优化
alexhilton2 小时前
深入浅出着色器:极坐标系与炫酷环形进度条
android·kotlin·android jetpack
早睡身体好~3 小时前
【lubancat】鲁班猫4实现开机后自动播放视频
音视频·linux开发
小幽余生不加糖4 小时前
电路方案分析(二十二)适用于音频应用的25-50W反激电源方案
人工智能·笔记·学习·音视频
胡耀超4 小时前
DataOceanAI Dolphin(ffmpeg音频转化教程) 多语言(中国方言)语音识别系统部署与应用指南
python·深度学习·ffmpeg·音视频·语音识别·多模态·asr
一条上岸小咸鱼8 小时前
Kotlin 基本数据类型(一):Numbers
android·前端·kotlin
Huntto8 小时前
最小二乘法计算触摸事件速度
android·最小二乘法·触摸事件·速度估计