A wrapper of Syncthing for Android, currently in the middle of a rewrite.
Forked from the public archive syncthing/syncthing-android.
I want to thank all contributors of the original project for their awesome work!
These dependencies and instructions are necessary for building from the command line. If you build using Android Studio, you can set up sdk, java and ndk differently. I think you still need to install python and go dependencies outside of AS. The docker file may be out of date or non-functional (working on it...)
- Android SDK and NDK
-
Download SDK command line tools from https://developer.android.com/studio#command-line-tools-only.
-
Unpack the downloaded archive to an empty folder. This path is going to become your
ANDROID_HOMEfolder. -
Inside the unpacked
cmdline-toolsfolder, create yet another folder calledlatest, then move everything else inside it, so that the final folder hierarchy looks as follows.cmdline-tools/latest/bin cmdline-tools/latest/lib cmdline-tools/latest/source.properties cmdline-tools/latest/NOTICE.txt -
Navigate inside
cmdline-tools/latest/bin, then execute./sdkmanager "platform-tools" "build-tools;<version>" "platforms;android-<version>" "extras;android;m2repository" "ndk;<version>"The required tools and NDK will be downloaded automatically.
NOTE: You should check Dockerfile for the specific version numbers to insert in the command above.
-
- Go (see https://docs.syncthing.net/dev/building#prerequisites for the required version)
- Java version 11 (if not present in
$PATH, you might need to set$JAVA_HOMEaccordingly) - Python version 3
- Clone the project with
Alternatively, if already present on the disk, run
git clone https://github.com/syncthing/syncthing-android.git --recursivein the project folder.git submodule init && git submodule update - Make sure that the
ANDROID_HOMEenvironment variable is set to the path containing the Android SDK (see Dependecies). - Navigate inside
syncthing-android, then build the APK file with./gradlew buildNative ./gradlew assembleDebug - Once completed,
app-debug.apkwill be present insideapp/build/outputs/apk/debug.
NOTE: On Windows, you must use the Command Prompt (and not PowerShell) to
compile. When doing so, in the commands replace all forward slashes / with
backslashes \.
The project is licensed under the MPLv2.