如何为 swift 3 中在锁屏中播放的每首音乐添加图像?
how to put an image for every music that playing in lock screen in swift 3?
我有一个播放器可以播放 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")!)]
为要更新的音频会话设置会话播放类别 MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo
try! AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: [])
try! AVAudioSession.sharedInstance().setActive(true)
EDIT1
添加 viewDidLoad 您的 VC :
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: [])
我有一个播放器可以播放 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")!)]
为要更新的音频会话设置会话播放类别 MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo
try! AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: [])
try! AVAudioSession.sharedInstance().setActive(true)
EDIT1
添加 viewDidLoad 您的 VC :
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: [])