IOS and Android App workflow improvements

I played around with the IOS and Android apps today and figured out a few things I didn’t realize that they work and found some issue in a normal workflow. I would like to place them here:

  1. Android App
  • Start Seafile
  • Goto a directory with various files (docx, pptx, xlsx, pdf, txt files)
  • open a office file
  • Seafile asks for a application to open
  • Choose Colabora Office
  • Colabora Office says: you are working in a copy

Workarround:

  • Start Colabora Office
  • Browse files
  • Choose local
  • Choose Seafile Storage
  • Browse to the same directory
  • Open the same file
  • Edit the file
  • Leave the file
  • Changes are saved to seafile

This forces the user to go to the file he wants to edit via Colabora Office, but intuitively he / she will be in the seafile App and will try to open a file, then maybe work in a copy and never realize why the file was never updated.

Another example:
workarround first this time:

  • Start Acrobat Reader
  • Browse Files
  • Choose local
  • Choose Seafile Storage
  • Browse to the same directory
  • Open the same file
  • Acrobat says you are working in a copy

So there is not chance of commenting or signing a file in a seafile-workflow without downloading editing the copy and then uploading the new file and hopefully overwrite the old one and not forgetting the folders and paths while switching arround apps

For a proper workflow it would be needed to:

  • Open Seafile
  • Goto the desired folder
  • Open a file
  • Seafile shows the files in readonly preview
  • Press a button Edit
  • Seafile asks user what program to use for edit
  • Choose Colabora Office or an other desired Programm to edit the File
  • The file-handle is passed over to Colabora Office / or the desired Programm
  • The file is displayed in Colabora or the desired Programm
  • Edit the file
  • Save and leave the file
  • The file-handle is passed back to Seafile
  • Seafile updates the orginal file
  1. iOS App
    On iOS its a similar story when you open a file in Seafile you can just “Send it to Colabora as a Copy”
  • You have to Start Colabora
  • Open File Browser
  • Chosse Seafile
  • Browse to the desired directory
  • Open the desired file
    an so on…

Conclusion:

  • You need a program on the device for each file that is to be editted. (okay easy)
  • The Programm needs to be able to browse Seafile as a StorageProvider. (hard)
  • Office Files can be done via Colabora Office or (MS Office when you are logged in).
  • Have not found a PDF viewer by now (at least for android) that can search in Seafile

This is from a user perspective were unpracticaly.

  1. Missing Two-Way sync
    I use a Keepass Database to store my passwords.

Workarround:

  • Start Seafile
  • Open the Keepass file
  • Choose a Keepass App
  • Login to the Database
  • Edit a record in the Database
  • Save the Database
  • Seafile updates the file on the server (nice)

Next Time of usage:

  • Open the Keepass App directly (not going via seafile)
  • The last Database is stored (content://com.seafile.seadroid2.provider/name/storage/0/…/database.kdbx)
  • press open
  • Error persmission on Denial: Opening Android Provider blabla

Try again

  • Open the Keepass App directly (not going via seafile again)
  • choose the Database but this time (content://database.kdbx)
  • press open
  • This time no error
  • Login to the Database
  • Edit a record in the Database
  • Save the Database
  • Seafile never updates the KDBX on the server (not so nice)

So you have to always go via the Seafile or FileBrowser app (and then over seafile) in order to use the Keepass app. But for Office you have to go via the Colabora App AND NOT via Seafile … so its just a big mess for the user.

My recommendation for the Android App:

  • Kick out the entire Camera-Upload stuff and replace it with this:

  • Let user create local and remote folder sync pairS as the ****** wish to

  • Let user create local and remote file sync pair if they desire

  • Don’t limit this feature by following files: jpg, mp4, webm and so one. Some people also want to upload other files types than photos/videos.

  • exclude the local seafile cache folder in this feature (hardcoded).

  • exclude the .Android and .Data folder in this feature (hardcoded).

  • ask user on a per folder-pair base if they want one way (in what direction) or two-way

  • ask user how often client shal scan for local changes.

  • server changes should immidietly hit the client

  • ask user if sync shall only be on celular or wifi only

As hard as I try to get my users, family and friends into seafile, they always start using OneDrive and other programs again. I believe its because of the above issues.
I know that very less people will really edit a excel or word on the SmartPhone but there also Tablets arround that are quite big and many people go arround get their contracts signed on tablets for example. So a write situation can possibly happen.

The two-way sync would solve so much pain in my opinion and would make life with seafile alot better. A nother issue: At the moment all photos are uploaded. I move them on then server/pc and sort them into directories and trash some.
Days later I look I my phone and all the old stuff is still there mixed the new stuff, and its just a mess.

I dont understand why this is okay for so many people.
Please dont hold up the webdav card here. Webdav is not going to happen.

Sorry if this comes hard to you, I’m just frustrated because try to hold on to seafile and defend it but it feels so hard when I see this.
Hey at least now we have Markdown.

Weeyy

fliesawayandcommitssuicide

3 Likes

I did some more testing on a iOS Tablet with Seafile and Colabora Office:

switches:
iOS Settings - Seafile - Data Storage options:

  • Seafile Server
  • Local Tablet

iOS Settings - Colabora - Data Storage options:

  • Seafile Server
  • Local Tablet

so I tested all four different posibilities and in none of them I could achieve a stable edit + save.
It works sometime, but very seldom and I dont know how to reproduce how it works.
Default settings is for all Apps is to download to local storage and that what I have set it back to.
Would not recommend this for production.

I communicate to my users that seafile on Smartphones / Tablet is read-only and wont bother with it anymore. Just wanted to share this with you in case some one plans a similar process.

3 Likes

As you have acknowledged on your post, to solve most of the Android issues you’d need to implement a sync feature into the seafile app, this requires a lot of work (not to mention it’s not battery friendly) and it’d be better left to specific apps like “Synchronize Ultimate” that can sync between document providers and the android storage.

From my research so far I can say this is an Android issue first, not a seafile issue. Android file management is all over the place, SAF exists as a way to unite all the different libraries and solutions that have been implemented over the years to access the filesystem and network resources, it’s an improvement but I don’t think it’ll make a big difference unless something like a virtualized filesystem is put in place to bring old apps or uncooperative developers up to date. It also exists the problem of permissions that apps need to be granted to access different storage providers/files, for example you opened a file from an app, but that app might have just been granted read permissions, I’d suspect what is done if the user chooses to save that same file is handled by the application. That’s how far I’ll on that as I’m not that experienced with android development.

The takeaway for me at the time of looking into this was the seafile android app team should not dedicate on non standard features like file synchronization with “physical” storage, but should more that anything improve the document provider implementation, in the hope that the whole android filesystem thing will improve in the future.

As for sources I don’t have anything on hand, this is something I investigated some time ago, if I got anything wrong please do correct me.

1 Like