在OS4上的Safari中,可以在后台流式传输YouTube视频的音频:
要尝试从YouTube启动视频,请在后台发送应用,双击主页按钮并切换到另一个应用。 此时音频将停止,但在使用不同的应用程序时,使用与Safari关联的遥控器可以在后台重新设置,暂停等等。
我想在我的应用程序中复制此行为,但所以没有发现这个问题的问题。 我正在使用标准的UIWebView技术来启动应用中的YouTube视频, 我已将AVAudioSession类别设置为AVAudioSessionCategoryPlayback,并且Info.plist中的Required Background Modes设置为“audio”。 我还重写了UIViewController的canBecomeFirstResponder以返回true。
我得到的是,YouTube视频可以从遥控器启动,暂停和恢复,但只要您切换到其他应用程序,YouTube播放器就会关闭,音频会停止。
我缺少什么? Safari如何做到这一点?
答案 0 :(得分:0)
事情是,不知道Safari.app 使用UIWebView。还记得一个月前Safari和UIWebView之间关于JS引擎速度差异的所有混乱吗?那么,恕我直言,你的问题与这种差异有关。鉴于这一特点,我不会感到惊讶你的方法不起作用。我认为UIWebView正在捕捉背景事件并为了内存经济目的而禁用它自己。
您可能想要尝试基于AVPlayer的应用程序,该应用程序旨在播放流式音频内容,而不是UIWebView。或者隐藏的MPMoviePlayerController,如果你想听到在线电影的音频。
希望这有帮助!