

BasicSync
1 like
A simple app for running Syncthing on Android.
Features
Properties
- Lightweight
- Privacy focused
Features
- Selective Synchronization
- No registration required
- End-to-End Encryption
- Automatic Backup
- Synchronization
- File Sync
BasicSync News & Activities
Highlights All activities
Recent activities
- niksavc liked BasicSync
- POX updated BasicSync
- justarandom added BasicSync
- justarandom added BasicSync as alternative to Syncthing, FreeFileSync, Synctrain and Syncthing Lite
BasicSync information
No comments or reviews, maybe you want to be first?
What is BasicSync?
BasicSync is a simple app for running Syncthing on Android.
The app is intentionally kept very basic so that the project is easy to maintain and keep updated. BasicSync only controls when Syncthing runs. The actual configuration is done through Syncthing's own web UI.
Features
- Supports Android 9 and newer
- Supports importing and exporting the configuration
- Supports pausing syncing based on network and battery conditions
- Supports Android's HTTP proxy settings
- Runs Syncthing as a library in the main process
- This makes BasicSync immune to Android >=12's child process restrictions
- Small additions to Syncthing's web UI to add a folder picker and QR code scanner
Limitations
- Android's Storage Access Framework is not supported. While, with effort, it's possible to implement a custom filesystem backend for Syncthing, SAF is not well suited for Syncthing's file access patterns.
- Accessing files by path is extremely expensive. For example, accessing a/b/c requires stating every file in directories a and b. This is unavoidable without caching.
- Syncthing is much more efficient when it can monitor for changes with inotify-style watchers. While it is technically possible to monitor for changes to directories with SAF, it does not report what changed. Computing the changes is an expensive operation. SAF also does not support watching files, only directories.
- Creating and opening files are two separate operations, which can result in concurrency issues and file conflicts. Furthermore, attempting to create a file that already exists results in Android creating a new file with a numbered suffix instead of returning an error.





