Appkit: How to perform an NSMetadataQuery on a Local Folder

Viewed 163

I'm trying to perform an NSMetadataQuery on a local macOS Folder (not in iCloud) using Appkit like this:

    let query = NSMetadataQuery()
    query.valueListAttributes = [ NSMetadataItemURLKey ]
    //Set the App's Documents folder as the SearchScope
    query.searchScopes = [FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!]
    NotificationCenter.default.addObserver(self, selector: #selector(handleQueryNotification), name: NSNotification.Name.NSMetadataQueryDidFinishGathering, object: query)
    query.enableUpdates()
    query.start()

However, I never get a notification that the query finished gathering results. When I change the searchScope to [NSMetadataQueryUbiquitousDocumentsScope], I do get a notification.

From Apple's documentation it seems that this should be possible:

This array can contain NSURL or NSString objects that represent file-system directories or the search scopes for the query

Is there something I'm doing wrong?

1 Answers
Related