我有一个播放器,在swift 3中播放音乐,并希望在我搜索的每首歌曲中锁定屏幕中显示图像堆栈溢出但是代码对我没有帮助,请告诉我一些简单的事情,因为我没有'我想使用不同的图像!我只是想在应用程序在锁定屏幕中播放歌曲时显示一个图像 所以这是我的代码
var player : AVAudioPlayer = AVAudioPlayer()
let audioPath = Bundle.main.path(forResource: "Torpedo", ofType: "mp3")
try player = AVAudioPlayer(contentsOf: NSURL(fileURLWithPath: audioPath!) as URL)
}catch {
//Error
}
let session = AVAudioSession.sharedInstance()
do {
try session.setCategory(AVAudioSessionCategoryPlayback)
}
catch {
}
player.play()
这是我使用的代码但是没有用
MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = [MPMediaItemPropertyArtist : AudioCenter.sharedInstnce.currentReciter().name,
MPMediaItemPropertyTitle : AudioCenter.sharedInstnce.currentSurah()!.name,
MPMediaItemPropertyArtwork:MPMediaItemArtwork(image: UIImage(named: "Logo")!)]
答案 0 :(得分:1)
设置音频会话的会话播放类别,您将在其中更新 MPNowPlayingInfoCenter.defaultCenter()。nowPlayingInfo
try! AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: [])
try! AVAudioSession.sharedInstance().setActive(true)
<强> EDIT1 强>
添加VC的 viewDidLoad :
self.becomeFirstResponder()
UIApplication.shared.beginReceivingRemoteControlEvents()
如果你的VC中没有它,还要再添加1个方法
override var canBecomeFirstResponder: Bool { return true }
<强> EDIT2 强>
试试
try! AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: AVAudioSessionCategoryOptions.mixWithOthers)
而不是
try! AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: [])