我有一个UIWebView在我的视图控制器中播放视频剪辑。当我退出应用程序时,音频将停止播放,虽然我可以在控制中心按播放按钮来继续播放。为此,我在AppDelegate.swift中使用以下代码:
当应用程序进入后台时,我希望音频能自动开始播放。如何启用MPMusicPlayerController/AVAudioPlayer(我真的不确定是哪个)以便继续播放,这样用户就不必手动按播放按钮了?
我还在我的目标设置中勾选了“音频和Airplay”,并将“所需后台模式”设置为“应用程序使用AirPlay播放音频或流媒体音频/视频”。
var error: NSError?
var success = AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, error: &error)
if !success {
NSLog("Failed to set audio session category. Error: \(error)")
}
更新:我在我的appDel
中创建了一个自定义视图,以容纳视频迷你播放器。以下是我如何创建它的方法。 CustomWindow
是一个继承自UIWindow
的自定义类,在这个类中,我将迷你播放器添加到视图层次结构的顶部。在这段代码中,我是在创建UIWebView
之前调用那个方法吗?
class AppDelegate: UIResponder, UIApplicationDelegate {
let myWind = CustomWindow(frame:UIScreen.mainScreen().bounds)
var window: UIWindow? {
set {
}
get {
return myWind
}
}
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
var error: NSError?
var success = AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, error: &error)
if success {
AVAudioSession.sharedInstance().setActive(true, error: nil)
UIApplication.sharedApplication().beginReceivingRemoteControlEvents()
} else {
NSLog("Failed to set audio session category. Error: \(error)")
}
myWind.showOrHidePopupWindow()
}