Как избежать влияния отключения звука управления устройством на AVPlayer

#iphone #avplayer #mute

#iPhone #avplayer #отключение звука

Вопрос:

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

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

Ответ №1:

Я вызвал следующий набор кода в своем appDidFinishLaunching:

 NSError *sessionError = nil;
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:amp;sessionError];
[[AVAudioSession sharedInstance] setActive:YES error:amp;sessionError];
  

Ответ №2:

Для 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)
}