美文网首页
iOS m3u8详情页预加载逻辑

iOS m3u8详情页预加载逻辑

作者: 王方帅 | 来源:发表于2022-04-15 09:46 被阅读0次

详情页m3u8预加载需求:
加载完当前模板所有ts后,加载后续2个模板的2个ts文件

初步规划:

(1)当前加载时传入两个reload url,当前完成时将这两个url传入preloadManager进行预加载
(2)返回时取消当前预加载,在列表展示前完成取消,因为列表展示会触发列表预加载。
(3)滑到下一页时停止当前预加载,然后重复执行步骤1
(4)点击使用模板时停止当前预加载,返回模板页后暂停执行,恢复播放后继续步骤1
(5)看一下拉取更多模板是在什么时机,会不会存在正常下方有2个模板但拉取不到2个模板的情况。
(6)测试后台返回前台预加载是否正常。

汇总规划:

(1)播放前停止预加载,传入两个reloadUrl,当前m3u8结束后将这两个url传入preloadManager进行预加载 OK
(2)返回时删除两个reloadUrl,并取消预加载,在列表展示前完成取消 OK
(3)看一下拉取更多模板时机问题,有无影响模板预加载url的获取。 OK
新增一个uploadPreloadURL的方法,如果调用m3u8loader的cancelAll时url不为两个,则在拉取更多后调此方法。
方法中判断如果当前m3u8已经加载完了则直接preload开始,否则设置preloadURL属性,等加载完的回调里preload开始。
(4)进入后台时取消预加载,返回前台重新预加载。 OK
(5)进入相册如果当前已经播放完了,会有两个预加载正在进行,此时取消并记录状态,返回时继续预加载。OK
暂时不取消了,防止逻辑过多出现bug。

网络差时,详情页预览图播放,开发记录:
1,竖向列表进来、横向列表进来、下滑先看看MP4是否已经下载到本地,已经下载了则进行下一步 OK
2,HLS添加获取m3u8和ts是否已经下载的方法。 OK
3,判断是否ts加载完成,没有的话创建MP4Player。 OK
4, mp4Player创建一个父类,父类大小设置跟imageView占位图大小一致, OK
5,在cell显示时播放mp4,移出屏幕后停止mp4. OK
6,在m3u8播放器开始播放的回调中移除MP4Player OK
7,模拟慢网的情况,在慢网下看看是不是ts加载完开始播放了才移除的MP4Player OK
8,如果滑动到下一个则播放下一个mp4视频。 OK
9,看一下是否正常走了PreviewCell的deinit OK
10,外面m3u8下载失败在里边会重新开始下载。OK

相关文章

  • iOS m3u8详情页预加载逻辑

    详情页m3u8预加载需求:加载完当前模板所有ts后,加载后续2个模板的2个ts文件 初步规划: (1)当前加载时传...

  • 预加载与智能预加载 (VIA)

    预加载与智能预加载(iOS) 网络与性能 预加载无限滚动列表Threshold惰性加载智能预加载 总结 前两次的分...

  • 页面预加载

    //预加载电影详情页面,一打开就开始预加载页面 注意一定要写在mui.plusReady里面,效果非常好,非常流畅...

  • 跨平台混编框架 MUI 仿豆瓣电影 APP 第五章

    5-1 电影详情页面跳转和数据传递 预加载卡了我小半天.和视频,和源码对不上是很烦躁的. 问题 这个预加载要放在m...

  • iOS 预加载

    最近看到一篇文章介绍 通过runtime进行资源预加载,因为项目中很多地方体验不是很好,借此研究一下、

  • iOS webview Hybrid资源文件预加载(NSURLP

    HybridPreLoading iOS webview Hybrid开发预加载 虽然NSURLCache可以实现...

  • IOS 预加载与智能预加载

    本篇小结 这篇文章是 ASDK 系列中的最后一篇,文章会介绍 iOS 中几种预加载的方案,以及 ASDK 中是如何...

  • 预加载与智能预加载(iOS)

    前两次的分享分别介绍了 ASDK 对于渲染的优化以及 ASDK 中使用的另一种布局模型;这两个新机制的引入分别解决...

  • 预加载与智能预加载(iOS)

    前两次的分享分别介绍了 ASDK 对于渲染的优化以及 ASDK 中使用的另一种布局模型;这两个新机制的引入分别解决...

  • iOS webView预加载

    1.提前创建webView对象,并且request,进入下一个页面的时候传过去。2.将webView文件以及资源放...

网友评论

      本文标题:iOS m3u8详情页预加载逻辑

      本文链接:https://www.haomeiwen.com/subject/blpfertx.html