Could you please give a bit of clarification on what this command does?
The adb
command is the Android Debug Bridge.
The reason Syncthing worked faster on your old phone and not on your current phone is that the Android operating system has changed.
Syncthing relies on the underlying OS for an IP address. Did you mean configuring Syncthing for a static address of a peer Device? If that’s what you meant, it’s under the Device / Edit / Addresses.
Enable Developer Options on Android. If enabled, then you can issue ADB commands through an USB cable with elevated rights. The command I sent gives Syncthing Fork the permission to use legacy access to the file system which hopefully helps with the access speed.
Same problem. 1 1Gb file takes 1-2 Seconds but 50+ 2-5Mb file takes almost 15-30 Mins.
Apparently, this is an issue for Android 11 or newer but my old setup was:
- Non-fork app
- Xiaomi 12T (Android 12-14) to Pixel 1(Android 10)
- No issue regardless of file size and quantity (Average 1-15Min transfer for 1Gb+ Mixed files)
Now with the fork setup, pretty much same setup but with the issue above.
Does the link means that put thousands of files in sdcard/Android/data/com.nutomic.syncthingandroid
or other path will slow down the devices?
FUSE performance impact is limited to heavy users of files stored on external shared storage only. External private storage (which includes
android/data
andandroid/obb
directories) is bypassed by FUSE, while internal storage (such as/data/data
, where many apps store data to keep it encrypted and secure) isn’t FUSE mounted.
I will do some expirement with termux on this.
For me, it is still slow in /storage/ABCD-1234/Android/data/com.termux/files
.
On the other hand, /data/data/com.termux/files
is very fast.
Accroding to google’s docs:
https://source.android.google.cn/docs/core/storage/fuse-passthrough
Only the devices which initially released at/after Android 12, can benefit from FUSE passthrough, which might accelerate the access to Android/data/*
under sdcard.
Have a good luck on this, or just root your android device and access /mnt/media_rw/ABCD-1234
.
I think the problem is that even if you do manage to get fast file access via the data
folder, other applications in most cases won’t be able to access them, which limits the actual usefulness of the workaround greatly (e.g. most people need to sync fixed paths like DCIM/Camera
, etc.).
Camera is the only large folder which is fixed. Everything else could be solved by the Syncthing app working as a document provider.
There are more . People seem to often sync folders created in the root path on the internal storage by other apps (e.g. WhatsApp, etc.). Those are also fixed and cannot be moved.
In my case, the main problematic folders containing a large number of files are a) Joplin (a note taking application), which for syncing purposes stores thousands of tiny MD files in a single folder, and b) Radicale with its thousands of tiny ICS files (used with https://forum.syncthing.net/t/how-to-sync-contacts-and-calendars-between-desktop-and-android-without-root/21326).
Not sure if Joplin would be able to utilise the Syncthing app if it acted as a document provider. It wouldn’t help with Radicale for sure, as this one is used via Termux which needs direct access to the folder.