Thank you anonymous Framework Engineer, it worked.
I had erroneously thought that querying for .album and subtype .any like so:
let albums = PHAssetCollection.fetchAssetCollections(with: .album, subtype: .any, options: nil)
would fetch for all albums regardless of subtype, including the synced albums, but alas not, you have to query for them specifically.
Is this also the case for all the other PHAssetCollectionSubtype subtypes?
Post
Replies
Boosts
Views
Activity
The bug you describe kai_ is perhaps not a bug, but how Apple intended it to work and is why I was confused about how to fetch synced (non-iCloud) photos in my app. When querying the photo library for photos on the top level, you only get the iCloud photos. It requires querying specifically for synced photos in order to get them.
I had assumed that synced photos was a subset of querying for all photos, but no it doesn't work that way and it's not clear at all in the iOS documentation.
So Apple will likely reject your feedback and you need to file feedback with the app developers of the apps that are not working for you and refer to this thread - this is what prompted me to start this thread because one of my customers had the same issue as you and now I have fixed it by querying for iTunes/mac synced photos specifically.