OpenConnect for Android
This is a VPN client for Android, based on the Linux build of OpenConnect.
Much of the Java code was derived from OpenVPN for Android by Arne Schwabe.
OpenConnect for Android is released under the GPLv2 license. For more information see the COPYING and doc/LICENSE.txt files.
Changelog: see doc/CHANGES.txt
To help out with translations, please visit this project's page on Transifex.
Downloads and support
Official releases are posted in the XDA thread and on Google Play.
Binary APK files are also available at F-Droid.
No registration is required to download from XDA or F-Droid.
Screenshots
Building from source
Prerequisites
On the host side you'll need to install:
- Android SDK in your $PATH (both platform-tools/ and tools/ directories)
- $ANDROID_HOME pointed at the Android SDK directory
- javac 1.8 and a recent version of Apache ant in your $PATH
- Use the Android SDK Manager to install API 19
- NDK r16b, nominally unzipped under /opt/android-sdk-linux_x86/
- Host-side gcc, make, etc. (Red Hat "Development Tools" group or Debian build-essential)
- git, autoconf, automake, and libtool
Compiling the external dependencies
Building OpenConnect from source requires compiling several .jar files and native binaries from external packages. These commands will build the binary components and copy them into the appropriate library and asset directories:
git clone https://github.com/cernekee/ics-openconnect
cd ics-openconnect
git submodule init
git submodule update
make -C external
This procedure only runs on a Linux PC. If you are unable to build from source, you can try fetching the cached artifacts from a recent CI build:
./misc/download-artifacts.sh
Compiling the app
After the binary components are built, this compiles the Java sources into an APK file:
cd ics-openconnect
./gradlew assembleDebug
To install the APK on a device:
adb install -r app/build/outputs/apk/debug/app-debug.apk
Logs of successful (and not-so-successful) builds can be found on this project's Travis CI page.