Je voudrais construire une application qui est capable d'obtenir le nom de toute chanson en cours de lecture sur l'appareil (Par exemple si j'utilise Spotify ou tout autre joueur à jouer une chanson, l'application devrait être en mesure d'obtenir le titre). Le titre devrait alors simplement être stocké dans une variable.Swift IOS: Obtenir le titre de la chanson en cours de lecture
Je n'ai pas réussi à utiliser nowPlayingInfo ou MPMediaItemPropertyTitle.
Quelqu'un pourrait-il m'aider s'il vous plaît? C'est le code que j'ai essayé mais j'ai une erreur (Utilisation de l'identifiant non résolu 'playerItem') pour la ligne: let metadataList = playerItem.asset.metadata as! [AVMetadataItem]
import UIKit
import MediaPlayer
import AVFoundation
class ViewController: UIViewController {
var url:NSURL!
let audioInfo = MPNowPlayingInfoCenter.default()
var nowPlayingInfo:[String:Any] = [:]
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
print(url.path!)
let metadataList = playerItem.asset.metadata as! [AVMetadataItem]
for item in metadataList {
if item.commonKey != nil && item.value != nil {
if item.commonKey == "title" {
println(item.stringValue)
nowPlayingInfo[MPMediaItemPropertyTitle] = item.stringValue
}
if item.commonKey == "type" {
println(item.stringValue)
nowPlayingInfo[MPMediaItemPropertyGenre] = item.stringValue
}
if item.commonKey == "albumName" {
println(item.stringValue)
nowPlayingInfo[MPMediaItemPropertyAlbumTitle] = item.stringValue
}
if item.commonKey == "artist" {
println(item.stringValue)
nowPlayingInfo[MPMediaItemPropertyArtist] = item.stringValue
}
if item.commonKey == "artwork" {
if let image = UIImage(data: item.value as! NSData) {
nowPlayingInfo[MPMediaItemPropertyArtwork] = MPMediaItemArtwork(image: image)
println(image.description)
}
}
}
}
audioInfo.nowPlayingInfo = nowPlayingInfo
Pouvez-vous partager du code que vous avez essayé? – Sal
Paul J'ai ajouté du code – Kenneth