iPhone Avplayer 中的 PIP 按钮

问题描述

我在项目的功能中启用了音频、AirPlay 和画中画背景模式。

我的问题是:

如果我在 iPad 设备上运行应用程序,我会看到画中画按钮,我可以启用画中画模式。如果我在 iPhone 设备上运行应用程序,我看不到画中画按钮,但我不明白为什么。

enter image description here

解决方法

您的 iPhone 上可能没有 iOS 14+。对于 iPad,iOS 13 足以支持画中画,但对于 iPhone,它仅适用于 iOS 14 及更高版本。

,

打开 Xcode -> 转到您的项目 -> 选择“签名和功能” -> 使用“+”按钮添加新功能。 -> 添加“背景模式”功能并选中“音频、AirPlay 和画中画”(下图)enabling PiP Capabilty 之后打开您的 AppDelegate 并添加对 PiP 的音频会话支持,如下代码所示:

    func application(_ application: UIApplication,didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    
    let audioSession = AVAudioSession.sharedInstance()
    do {
        try audioSession.setCategory(.playback)
        try audioSession.setActive(true,options: [])
    } catch {
        print("Setting category to AVAudioSessionCategoryPlayback failed.")
    }
    
    return true
}

执行上述所有步骤后,您的画中画按钮应该出现在您的播放器中。