对于和我同样菜逼前端,不会 java 原生安卓的人,玩 flutter 真的好痛苦的说。前端
今天就谈谈我遇到的 flutter 播放器的问题java
1:flutter 自带的 video_player,以及 video_player 的孙子们( chewie,betterplayer,yoyo-player,等等)(不推荐使用)git
市面上主流的大概是 video_player 和她的衍生品,可是这类播放器有几个要命的问题,1:video_player 自己对于分段源 m3u8 的播放很是不友好,典型的问题就是某个分段在忽然网络有点很差的状况下请求失败,会致使 video_player 直接播放失败,貌似不会去重复请求,有常常下载 m3u8 视频的朋友们确定知道,在下载的时候,太多的切片,总有那么一两个小片是会偶尔超时一下,那么使用 video_player 播放就是炸胡,(播放到一半忽然出现播放失败)github
2:编译原生播放器到 flutter 使用网络
这一类典型的表明就是 fijkplayer,flutter_ijkplayer 。这两个播放器差很少,前者 fijkplayer 做者维护的更勤一些。不过前者 fijkplayer 做者注重播放器性能和 bug 修复,皮肤和基本使用上的完善做者但愿用户自行解决,说白话就是你本身去写皮肤和手势那些,会增长时间,新人使用不是很友好 flutter_ijkplayer 做者上一次提交代码好像是 3 月份的时候,差很少挺久了,文档貌似不全,好处是皮肤有自带的,至于想自定义皮肤,只能彻底参考源码。好处是自带有手势拖动快进,快退app
3:原生播放器与 flutter 交互(我也不知道应该怎么算这类播放器,没办法,我菜逼新人)
典型表明 flutter_tencentplayer,这款播放器,是我目前见过 flutter 这边能找到能用的最好的一款了,功能方面都很好,手势拖动都有。坏处是,文档说明不全(指的是新手用),要看源码找下。也不知道是我太菜,仍是什么缘由我我的使用的时候,没有成功的时候,说人话就是我不会用这个播放器,也没办法打包,报错哇哇的,解决不了。 不过我见过别人成功使用 flutter_tencentplayer 打包的 app,确实效果很好。 缺点,可能上手不是很容易,打包文档方面,反正我不会。不能在模拟器预览貌似,只能真机ide
在绕了一圈以后,差很少一年过去了,播放器这些也没什么变化,仍是那样 最后我选择了 fijkplayer,可是 fijkplayer 没有手势快进,皮肤也就那样。据做者 github 说是有打算弄,可是一年过去了也没看到,没办法本身瞎逼改了改,出来个包,是个 fijkplayer 的简单皮肤, 功能上就是美化了下播放器 ui,加入了手势滑动快进快退,本来打算也加入上滑下滑操做亮度和音量的,可是发现做者文档说修改音量须要修改 java 原生入口文件,因此就放弃了。性能
皮肤地址 https://github.com/abcd498936590/fijkplayer_skinui