We have a very specific use case in the app I am working on where we need the following:
- Download PHAsset iCloud images and make sure data is cached on disk so next time it can be retrieved offline
- Create PHAsset from a file URL but do not show them in the Photos app
- Tie the PHAsset to the app, so if the app is deleted all PHAssets created by the app are removed with it
As far as I can tell from my investigation, there's no way we can do this.
Note: there's an internal library we are trying to avoid to modify that works only with PHAssets. However, we now need to support images downloaded from the internet to work with this library too, thus the need to generate our own PHAssets and the ability to manage those.