I want a user to be able to save a URL of a folder on a cloud share using the standard FileManager APIs. I'm testing with Dropbox in particular. The initial interaction is working (I can select a folder, save it as a bookmark, and scan the files in that folder). However, no changes made externally to the folder will be reflected in the app when I refresh the contents.
Launching the Files app and browsing to the folder DOES show the updated contents, and once that step is complete, then my app will again show up-to-date contents.
Is there perhaps some API I should be calling to trigger the Dropbox File Provider extension to update it's cache?
Sample project demonstrating issue: https://github.com/dhennessy/FolderScan
STEPS TO REPRODUCE
- Launch the app on a physical device
- Tap Choose, browse to folder on a Dropbox share, tap Open to select
- The app will show the contents of the folder (the 'test' folder)
- Switch to the Dropbox app and create a new subfolder of the test folder
- Return to the test app and tap Refresh. Notice that the changes do not appear
- Re-launching the app also does not show the changes
Workaround
- Launch the Files app (or re-open the
UIDocumentPickerViewController
by tapping choose and then dismiss it) - Tap Refresh and the changes will appear in the app
Note: None of the other 'cloud file providers' (google drive, one drive, box) even allow the user to even select a folder.