Skip to content
 
 

Repository files navigation

Syncthing for Android

License: MPLv2 Build Min SDK

Get it on Google Play

A wrapper of Syncthing for Android. This is intended to be the revival and continuation of the original syncthing/syncthing-android project.

I want to thank all contributors of the original project for their awesome work!

Welcome screen of the app (white mode) Welcome screen of the app (dark mode)

Building

(May be out of date. If so, please open an issue!)

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. The Docker file is not needed for building, and is out of date or non-functional.

Dependencies

  1. Set up JDK version 21.
  2. Android SDK and NDK
    1. Download SDK command line tools from https://developer.android.com/studio#command-line-tools-only.
    2. Unpack the downloaded archive to an empty folder. This path is going to become your ANDROID_HOME folder.
    3. Inside the unpacked cmdline-tools folder, create yet another folder called latest, 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
      
    4. Navigate inside cmdline-tools/latest/bin, then execute
      yes | ./sdkmanager "platform-tools" "build-tools;36.0.0" "platforms;android-36" "extras;android;m2repository" "ndk;29.0.14206865"
      
      The required tools and NDK will be downloaded automatically.
  3. You also need a C compiler for the Go build process. This is not the one included in the NDK.

(Go is downloaded automatically by Gradle when building.) (Python is not needed anymore.)

Build instructions

  1. Clone the project with

    git clone https://github.com/syncthing/syncthing-android.git --recursive
    

    Alternatively, if already present on the disk, run

    git pull && git submodule init && git submodule update
    

    in the project folder.

  2. Make sure that the ANDROID_HOME environment variable is set to the path containing the Android SDK (see Dependencies).

  3. Navigate inside syncthing-android, then build with

    To build the APK:

    ./gradlew assembleDebug
    

    To build the AAB:

    ./gradlew bundleDebug
    
  4. Once completed, the result will be in app/build/outputs/apk/debug and app/build/outputs/bundle/debug respectively.

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 \.

License

The project is licensed under the MPLv2.

About

Syncthing app for Android, forked from public archive.

Resources

Contributing

Stars

11 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages