Пульты дистанционного управления аудиоплеером не видны на экране блокировки IOS 11 - PullRequest
0 голосов
/ 15 мая 2018

У меня есть собственный класс, который воспроизводит аудио с AVPlayer.В методе этого класса добавили команды воспроизведения, паузы, предыдущей и следующей дорожки к экземпляру MPRemoteCommandCenter, например, так:

let mediaPlayerCommandCenter = MPRemoteCommandCenter.shared()
    mediaPlayerCommandCenter.playCommand.addTarget(self, action: #selector(playRemoteHandler(_:))) // .. and so on

Я также добавил детали MPNowPlayingInfoCenter.«Фоновый режим» включен в разделе «Возможности» настроек проекта, и приложение воспроизводит аудио в фоновом режиме.


В приложении (метод application: didFinishLaunchingWithOptions :) выбрана и активирована категория AVAudioSession:

do {
        try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
        try AVAudioSession.sharedInstance().setActive(true)
    } catch {
        print(error)
    }

    application.beginReceivingRemoteControlEvents() // in the documentation noticed that it is not necessary if we are using MPRemoteCommandCenter but anyways I tried it also

После всех этих кодов пульты дистанционного управления не видны ни на экране блокировки, ни в центре управления.Но в фоновом режиме звук воспроизводится нормально.

...