Как избежать влияния Mute Control устройства на AVPlayer

Я использую AVPlayer для воспроизведения видео в приложении для iPhone. Когда я отключаю громкость устройства, используя Mute COntrol, предусмотренный в устройстве, громкость AVPlayer также отключается. Согласно документации, это правильное поведение.

Но этого не происходит со стандартным проигрывателем Apple (воспроизведение музыки, воспроизведение видео из приложения "Фото"). Почему это? Как мне добиться этого поведения по умолчанию?

Спасибо и С уважением, Дипа

2 ответа

Решение

Я вызвал следующий набор кода в моем 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)
}
Другие вопросы по тегам