How to know if a file is synced on my android client?

Thanks for your interest in this!

FYI I long-ago decided to use Keypass2Android as read-only on the phone because I have no confidence that I am working on the correct version of the database. So I make all keypass database updates on the desktop only.

Because keypass adds extra complexity to this I think it is easier to test using a simpler scenario.

On the desktop I have several folders each set up as SF libraries. Suppose that one of those folders is called /test and contains a file called /test/test1.txt and the text file contains one line of characters “abc”.

Historically I have forced this to sync to the phone and so if I look through the phone file system I can see the file and its contents match the desktop version ie “abc”.

So now:

  • on the desktop edit the file to contain “abcD”.
  • use a browser and view the file on the SF server, it contains “abcD” == GOOD
  • on the phone browse through the file system (outside SF app) and view the file, it contains “abc” == BAD (but not surprising)
  • on the phone settings find the seafile account and notice that the last sync is showing as an hour ago so force a “sync all”
  • on the phone browse the file system and check the file again, it still has “abc” == BAD (I hoped this would have been updated by the sync process)
  • on the phone open the SF app, navigate to the /test folder and note that the file is there, with a red tick, and a timestamp of 3 minutes ago (so SF knows that we just updated the file)
  • click on the file and watch as the file is downloaded, and then chose the open application, open it and see it contains “abcD” == GOOD
  • on the phone check in the file system (ie outside the SF app) that the file has now been updated (just to be sure we’re looking at the right file) and yes, it contains “abcD”

So in summary, when SF did its sync on the phone it appears to update its “knowledge” that the file was updated 3 mins ago, but does not actually download the file.

Back to my original question … how do I know which files are actually current (on the phone) and which ones need to be downloaded?

But it gets worse:

  • don’t close the SF app on the phone
  • on the desktop edit the file again to contain “abcDE”
  • browse the file on the SF server, contains “abcDE” == GOOD
  • on the phone go to the account settings and force a “sync all” again
  • on phone in the SF app browse to the folder again and note that the timestamp on the file does not seem to have been updated since last time.
  • open the file again and it contains “abcD” == BAD
  • long press on the file name, select it and touch download and note a message “all files downloaded”
  • open it again and it still shows “abcD” == BAD
  • wait half an hour … open the file again and watch it download, it contains “abcDE” == WHAT???

So what is going on ? The sync all didin’t seem to work this time around, but then after a wait period it did. Weird?

Bottom line is that I find it really hard to have confidence in the status of files on the phone, and wish I have some better idea how this is supposed to work.