iOS Abfrage über Album MPMediaEntityPersistentID bringt manchmal keine Songs zurück
Ich schreibe eine App, die Musik mit der in MediaPlayer integrierten Bibliothek von Apple wiedergibt. Ich speichere eine Reihe von Alben und eine Reihe von IDs und suche dann, wenn eine ausgewählt ist, nach einem Album unter Verwendung der ID. Aus irgendeinem Grund können einige Alben keine Songs finden, obwohl ihnen eine ID zugeordnet ist. Es sind jedes Mal die gleichen Alben, die nicht funktionieren, und es scheint kein Muster dafür zu geben.
Ich verwende den folgenden Code, um die Namen und IDs in zwei Arrays zu speichern
let query = MPMediaQuery.albumsQuery()
let mediaCollection = MPMediaItemCollection(items: query.items!)
for album in mediaCollection.items {
albumTitleArray.append(album.albumTitle!)
albumIdArray.append(album.albumPersistentID)
}
Wenn einer ausgewählt ist, gebe ich die ID an die queryMedia-Methode weiter
func queryMedia(identifier:MPMediaEntityPersistentID) -> MPMediaItemCollection {
let predicateId = MPMediaPropertyPredicate(value: String(identifier), forProperty: MPMediaItemPropertyAlbumPersistentID, comparisonType:MPMediaPredicateComparison.EqualTo)
let query = MPMediaQuery.init()
query.addFilterPredicate(predicateId)
let collection = MPMediaItemCollection(items: query.items!)
return collection;
}
Jede Hilfe bei der Lösung dieses Problems wäre dankbar!