/ics-openconnect

Android UI for OpenConnect VPN client

Primary LanguageJavaGNU General Public License v2.0GPL-2.0

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

screenshot-0  screenshot-1

screenshot-2  screenshot-3

Building from source

Prerequisites

On the host side you'll need to install:

  • Android SDK in your $PATH (both platform-tools/ and tools/ directories)
  • javac 1.6 and a recent version of Apache ant in your $PATH
  • Use the Android SDK Manager to install API 19
  • NDK r10d, nominally under /opt/android-ndk-r10d
  • 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 libs/ and assets/raw/

git clone git://github.com/cernekee/ics-openconnect
cd ics-openconnect
git submodule init
git submodule update
make -C external NDK=/opt/android-ndk-r10d

Compiling the app

After the binary components are built, this compiles the Java sources into an APK file:

cd ics-openconnect
android update project -p .
ant debug

Logs of successful (and not-so-successful) builds can be found on this project's Travis CI page.