我正在使用 AVPlayer 在我的 iPhone 应用程序中播放视频。当我使用设备中提供的静音控制使设备音量静音时,AVPlayer 音量也静音。根据文档,这是正确的行为。
但是,Apple 的默认播放器不会发生这种情况(播放音乐,从照片应用程序播放视频)。为什么是这样?如何实现此默认行为?
我在 appDidFinishLaunching 中调用了以下代码集:
NSError *sessionError = nil;
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&sessionError];
[[AVAudioSession sharedInstance] setActive:YES error:&sessionError];
对于 Swift 3,以下内容会有所帮助。在下面的示例中,它在视图加载时运行:
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
// avoid affect of Mute Control of the device on AVPlayer
try? AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
try? AVAudioSession.sharedInstance().setActive(true)
}