【发布时间】:2017-03-07 19:42:09
【问题描述】:
我正在我的实际 iPhone 6s 设备上使用 iOS 10.2 对此进行测试。
我正在播放流式音频,并且能够播放/暂停音频、跳过曲目等。我还启用了后台模式,并且音频在后台播放并正确地继续播放列表。我遇到的唯一问题是显示锁定屏幕控件。什么都没有显示...
在我的 MainViewController 的 viewDidLoad() 中,当我的应用启动时,我称之为...
func setupAudioSession(){
UIApplication.shared.beginReceivingRemoteControlEvents()
do {
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, with: AVAudioSessionCategoryOptions.mixWithOthers)
self.becomeFirstResponder()
do {
try AVAudioSession.sharedInstance().setActive(true)
print("AVAudioSession is Active")
} catch let error as NSError {
print(error.localizedDescription)
}
} catch let error as NSError {
print(error.localizedDescription)
}
}
然后在我开始播放音频后在我的 AudioPlayer 类中调用...
func setupLockScreen(){
let commandCenter = MPRemoteCommandCenter.shared()
commandCenter.nextTrackCommand.isEnabled = true
commandCenter.nextTrackCommand.addTarget(self, action:#selector(skipTrack))
MPNowPlayingInfoCenter.default().nowPlayingInfo = [MPMediaItemPropertyTitle: "TESTING"]
}
当我锁定我的 iPhone,然后再次点击电源按钮进入锁定屏幕时,根本不显示音频控件。好像没有播放音频,我只看到我的正常背景照片。控制面板中也没有显示任何控件(在主屏幕上向上滑动,然后向左滑动到音乐控件应位于的位置)。
问题是因为我没有使用 AVAudioPlayer 或 AVPlayer 吗?但是,例如,Spotify 如何使用自己的自定义音频播放器显示锁定屏幕控件?感谢您的任何建议/帮助
【问题讨论】:
标签: ios swift audio media-player