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!

Antworten auf die Frage(2)

Ihre Antwort auf die Frage