ios - 如何在离开 AVPlayer View 后停止下载 HLS 流视频?

标签 ios iphone avplayer avplayerlayer avplayeritem

我正在尝试使用 AVPlayer 播放 HLS 流。播放器可以正常播放流,但是,在离开播放器 View 后,它似乎并没有停止下载 HLS 流的数据。离开 AVPlayer View 后,我在状态栏上看到一个网络数据旋转器几分钟。

我尝试过 cancelPendingSeekscancelLoading,并尝试使用 removeFromSuperLayer 从其 super 层中删除 AVPlayerLayer,但是,这些似乎都不能解决问题——状态栏上仍然有一个微调器。

这个微调器在实际设备上可以看到,但模拟器上没有微调器。我确定视频正在下载;我可以在网络监控应用程序中查看数据使用情况。我该如何解决这个问题?

最佳答案

在您的 AVPlayer 对象上调用 pause,然后将该项目替换为 nil 项目,并将视频播放器设置为 nil。

[anAVPlayerObject 暂停]; [anAVPlayerObject ReplaceCurrentItemWithPlayerItem:nil]; anAVPlayerObject = nil;

关于ios - 如何在离开 AVPlayer View 后停止下载 HLS 流视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34574360/

相关文章:

iOS : how to know if a live audio stream is "On air"?

ios - 禁用 AVPlayer 的 "drag"功能

ios - __destroy_helper_block_ 上的 Objective-C 崩溃

android - cocos2d-x CCDirector,暂停/恢复 vs stopAnimation/startAnimation

ios - 在 Swift 3 中创建与 super View 相同大小的 View

ios - 使用 AFHttpClient 请求带有身份验证 key 的 api

iphone - EKEventStore.calendars 返回不存在的 "calendar"对象

ios - 获取崩溃无法在 ios 中将自己添加为 subview

ios - 无法在具有约束的 Storyboard 上将两个 View 居中 - iOS

ios - 如何获得 AvPlayer 持续时间 - Swift