首页 > 代码库 > phongap开发中安卓平台上如何调用第三方播放器来播放HLS视频
phongap开发中安卓平台上如何调用第三方播放器来播放HLS视频
前文曾经讲了关于在安卓平台上利用phonegap开发播放HLS的解决方案,其实最好的方案就是自己针对HLS视频开发自己的播放器,但是开发播放器是一个浩大的工程,必须对原生安卓开发非常熟悉,并且对视频播放知识需要一定的积累。对于一般开发人员,尤其是web开发人员来讲,这显然不现实,同时这也违背了我们采用phonegap来开发跨平台移动软件的初衷。那么在这种情况下如何达到我们预期的目标呢?答案是调用第三方应用。
step1:首先需要在手机上安装一个能够播放HLS协议视频的播放器,例如MXplayer或者QQ浏览器。
step2:如何调用这个播放器来播放呢?涉及到调用播放器这就要写原生的Java代码了,我们可以利用这个Videoplayer的phonegap插件https://github.com/raulduran/VideoPlayer,直接使用这个插件来播放视频的话,它在不同手机上表现形式是不同的,笔者使用的是红米手机进行测试的。直接播放的话会调用系统自带的播放器来播放,这种情况下,这个播放器是不能够播放HLS视频的。而且红米手机无法更改默认视频播放器(不root的话),如何解决?
step3:当然我们可以获取安装在手机上的第三方播放器的包名以及入口Activity类名来直接打开它,但是这种方法需要写很多代码,并且效率不高,因为要去查找手机中所有的应用。
step4:最好的办法是修改我们使用的Videoplayer插件的源代码,由于HLS视频的索引文件是以ts为拓展名的,我们在
VideoPlayer.java中将以下代码修改
原来是intent.setDataAndType(uri,"video/*"),现在改为intent.setDataAndType(uri,"video/ts"),这时候再点击播放按钮,会产生如下效果
这时候选择默认的视频播放器,并选择默认记住此项,那么下次播放会直接调用这个播放器去播放。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。