The problem I'm having is that when I select a file to download from my Dropbox account, the Downloading progress indicator alert is displayed with a Cancel button, but the progress bar either doesn't display or it displays only a few pixels worth and just sits there.
Eventually I get an error that says:
"Couldn't Download File, No Internet connection or couldn't contact Dropbox servers."
The strange thing is that for a file that I was trying to download, this message appears immediately when I tap on it. But if I choose a different file that I hadn't tried to download before, then it sits there on the Downloading alert and eventually gives the same error as above.
It seems to be mostly a problem with larger files though, although smaller files take much longer to download than they should. Is there a file size limit for downloads? A 13 MB file took about 5 minutes to download. I have a 150 mbps Internet connection. In fact I just did a SpeedTest.net test and I got 176 mbps. So it's not from a slow Internet connection.
I just tried downloading a 26.5 MB file and the progress bar got about 2/3 of the way across (after more than 5 minutes) and I got the Internet Connection error.
Is there any throttling going on when downloading from Dropbox using UIDocumentPickerViewController?
Is there a way to debug the Dropbox extension that provides the UIDocumentPickerViewController to our apps? I looked in the Network debug console, but nothing is happening there during a download. I'm guessing the download process happens outside of my app's process.
Or is this just a case of having to wait for a newer Dropbox version to correct this problem?
I've been working on creating a sample app to demonstrate the problem. Copying code that I've used in my main app, but for some odd reason, the sample app isn't exhibiting all of the same symptoms. It is exhibiting one symptom though and that's to hang at the very end of the download before the Downloading... alert disappears. It basically never stops and even the Cancel button becomes unresponsive.
But for some reason my sample app downloads much more quickly than my main app. It's so bizarre because I'm calling the same code to display the cloud service menu and then to pick the cloud service, then download the file.
My test app was just a single view app, but my main app is a tab bar app which is also a UIDocument based app. Plus it also fires up a couple of listeners. And it opens up one view and then modally displays another view on top of that and that's where the tab bar controller is and then the UIDocumentPickerViewController gets created off of that.
So I may need to more closely replicate my basic structure in my test app to see if any of those things can affect download performance and functionality of downloading from Dropbox.
I'll keep at it and if I find anything definitive then I'll submit a ticket.
So a strange thing is that I changed where I create my "FilesListViewController" so that it's instantiated directly from my root controller and now downloads are quicker and no more connection errors. Although they're still no where near as quick as they should be. For example, downloading a 205 MB file from my Mac from my Dropbox account using Safari takes 15 seconds. The same file downloaded using UIDocumentPickerViewController takes 3 1/2 minutes. I'm using the same 5 ghz WiFi network on my MacBook Pro and my iPhone 7. Using macOS Sierra 10.12.5 and iOS 10.3.2 respectively.
Is it normal for UIDocumentPickerViewController to take that much longer to download?
Thanks for following up. I can't say offhand if that's expected, as these may be using different mechanisms. We'd have to take a closer look. Please feel free to open a ticket with details/code if you'd like us to do so. Thanks!