Je travaille avec MPMediaQuery et spécifiquement Podcasts. Je vais avoir un moment très difficile avec les options et l'emballage/déballage dans ce cas particulier.Je n'arrive pas à comprendre comment éviter le plantage avec le type de Date et l'habillage dans Swift 3
titleFilter = MPMediaPropertyPredicate(value: selectedPodcastTitle, forProperty: MPMediaItemPropertyPodcastTitle, comparisonType: .equalTo)
qryPodcasts.addFilterPredicate(titleFilter)
for junk in qryPodcasts.items!{
//works fine
if let sTitle = junk.title {
print("episode title: \(sTitle)")
}else{
print("episode title is nil")
}
//works fine
if let dRelease = junk.releaseDate {
print("episode release date: \(dRelease)")
}else{
print("episode release date is nil")
}
if #available(iOS 10.0, *) {
// can't figure out how to make this work
// crashes on some podcasts and I suspect it's when 'addedDate' is nil
if let dAdded: Date = junk.dateAdded {
print("episode added date: \(junk.dateAdded)")
}else{
print("episode added date is nil")
}
} else {
print("episode added date is not available")
}
}
Avez-vous essayé de définir un point d'arrêt et de suivre le déroulement du programme? Peut-être qu'il y a un effet secondaire de quelque chose qui se passe. Essayez également, au lieu d'utiliser l'accesseur de propriété, 'junk.value (forProperty: la clé de date ajoutée)' et voyez ce que cela vous donne. Si c'est nul ou quelque chose de génial, vous avez peut-être trébuché dans un bug rapide. – hola
Je ne vois pas de clé de date ajoutée en réalité. – hola
J'espère que vous comprendre cela, bonne chance! – hola