52 votes

Obtenez une erreur lorsque vous essayez d'obtenir toutes les photos de PHAssetCollection.fetchAssetCollections

Je veux obtenir toutes les photos de mon album personnalisé. mais à la place, ce que j'obtiens est l'erreur ci-dessous.

Mon code

 let collections:PHFetchResult = PHAssetCollection.fetchAssetCollections(with: .album, subtype: .any, options: fetchOptions)

Erreur que j'obtiens

"Erreur renvoyée par le démon : Erreur Domain=com.apple.accounts Code=7 "(nul)""

Des idées pour résoudre le problème?

1voto

AlrightyRob Points 39

Sur la base des commentaires, je ne suis pas tout à fait sûr du problème, mais j'espère que ce code pourra vous aider. L'utilisation de .album plutôt que de .smartAlbum pourrait également faire partie du problème.

 private var fetchResult: PHFetchResult<PHAsset>!

func fetchOptions(_ predicate: NSPredicate?) -> PHFetchOptions {
            let options = PHFetchOptions()
            options.sortDescriptors = [ NSSortDescriptor(key: "creationDate", ascending: false) ]
        options.predicate = predicate
        return options
    }
}

    if let userLibraryCollection = PHAssetCollection.fetchAssetCollections(with: .smartAlbum, subtype: .smartAlbumUserLibrary, options: nil).firstObject {
        self.fetchResult = PHAsset.fetchAssets(in: userLibraryCollection, options: fetchOptions(NSPredicate(format: "mediaType = \(PHAssetMediaType.image.rawValue)")))
    } else {
        self.fetchResult = PHAsset.fetchAssets(with: .image, options: fetchOptions(nil))
    }

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X