В iOS 11 мое музыкальное приложение показывало бы элементы управления экрана блокировки, когда я блокировал свой iPhone.Я смог увидеть песню, которая воспроизводится в данный момент, и воспроизведение / пауза, переход вперед и назад.Однако при обновлении до Xcode 10 / iOS 12 я больше не вижу элементов управления экрана блокировки только датой и временем ...
Однако, если я проведу пальцем вверх и получу этот экран виджета (где вы можете включить самолетрежим и т. д.) Я МОГУ видеть информацию, воспроизводимую сейчас.
Вот что у меня есть
В фоновом режиме
![Modes](https://i.stack.imgur.com/uLCbS.png)
Я обновил свой код до следующего:
Вызывается в моем viewDidLoad
do {
try AVAudioSession.sharedInstance().setCategory(.soloAmbient, mode: .default, options: .allowAirPlay)
print("Playback OK")
try AVAudioSession.sharedInstance().setActive(true)
print("Session is Active")
} catch {
print(error)
}
UIApplication.shared.beginReceivingRemoteControlEvents()
self.becomeFirstResponder()
У меня ранее не было следующего кода в последней рабочей версии, но я добавил егопотому что я нашел похожие посты, предлагающие сделать это
if let songInfo = self.mediaPlayer.nowPlayingItem {
nowPlayingInfoCenter.nowPlayingInfo = [
MPMediaItemPropertyTitle: songInfo.title ?? "",
MPMediaItemPropertyArtist: songInfo.artist ?? "",
MPMediaItemPropertyArtwork : songInfo.artwork?.image(at: CGSize(width: 400, height: 400)) ?? #imageLiteral(resourceName: "emptyArtworkImage")]
}
Я ставлю точки останова на do try
, он не печатает ни одну из функций печати и пропускает try
Преобразовал ли ямой код неверен?