首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我使用“主页”按钮输入背景时,AVPlayer停止播放视频

当我使用“主页”按钮输入背景时,AVPlayer停止播放视频
EN

Stack Overflow用户
提问于 2019-10-05 17:11:28
回答 2查看 294关注 0票数 0

我在一个AVPlayerLooper中有一个AVPlayer在播放一个本地视频文件(MP4)。它的工作,直到应用程序进入背景。当我重新打开应用程序时,视频就会暂停。当我重新打开应用程序时,我如何确保它在播放?非常感谢汉斯。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-10-05 17:18:24

这是AVPlayer框架的一个常见问题。但是,修复非常简单,假设您的AVPlayer在常规视图中。首先,让您的videoPlayer或者它在全局变量中的视图。您可以通过在任何类之外声明它来做到这一点。然后,您需要转到您的AppDelegate文件并进行以下更改:

代码语言:javascript
复制
    func applicationDidBecomeActive(_ application: UIApplication) {

        yourVideoPlayerView.player?.play()

    }

希望这能有所帮助!

票数 0
EN

Stack Overflow用户

发布于 2019-10-05 17:41:05

关于全局变量,您不应该使用它。使用全局变量几乎总是(如果不是总是的话)一个坏主意。但我相信你现在已经(因为你在你的第二条评论中提出了这个问题)。

您可以使用Notification来侦听应用程序到前台或后台的通知,如下所示:

代码语言:javascript
复制
let applicationForegroundObserver = NotificationCenter.default.addObserver(forName: NSNotification.Name.UIApplicationDidBecomeActive, object: nil, queue: OperationQueue.main, using: { [weak self](notification) in
        // Here you can resume playback in your case, or do whatever you need
    })

此通知可以在任何您想要的地方使用。所以也许这是一个想法,如果你使用这个在视图控制器,你有播放器。也许您可以在viewDidAppear上注册这些通知,在viewDidDisappear或类似的东西上取消注册。或者干脆在viewDidLoad上注册。(这取决于你想要实现什么)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58250599

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档