I setup Seafile a few months ago with the default setup to test it out. I finally decided to setup SSL to secure the connection (especially on my phone and tablets).
I followed the guide at Deploy with Apache but while it worked fine with the desktop client, the web upload and Android app did not work (Download failed).
The issue was that I have another Apache server using the default ssl port (443) so I was portforwarding 8000 to 443 for the second server (https://seafile.example.com:8000 -> https://internal_seafile_ip:443).
I needed to change the seahub_settings.py file from
FILE_SERVER_ROOT = 'https://seafile.example.com/seafhttp'
FILE_SERVER_ROOT = 'https://seafile.example.com:8000/seafhttp'
After that just restart seahub and it should work on the web and on Android.