Skip to content
 
 

Repository files navigation

OConnect

OConnect — OpenConnect VPN, refined for Android

Latest release Android 6.0 or newer GPLv2 license

A focused, open-source Android client for OpenConnect-compatible SSL VPN gateways.
Clear profiles, modern Android controls, and the full OpenConnect connection engine—without root.

Download the latest APK · Documentation · Report an issue

Why OConnect

Focused Compatible Android-native
A clear dashboard, guided profile setup, and settings organized around real connection tasks. Works with OpenConnect-compatible gateways, including Cisco AnyConnect-compatible servers and ocserv. Material light and dark themes, Quick Settings integration, notifications, update checks, and modern Android behavior.

OConnect keeps the proven OpenConnect VPN core while modernizing the Android experience around it. It is maintained as a distinct app with its own identity, application ID, release channel, and product documentation.

Interface

These screenshots were captured from OConnect v1.17.0 on Android 16 using only fictional example data.

Dashboard Profile setup
OConnect dashboard with an example VPN profile OConnect VPN profile editor
Settings About OConnect
OConnect general settings OConnect About screen

Additional current screenshots, including onboarding and Simplified Chinese, are available in screenshots/readme.

Capabilities

  • OpenConnect-compatible SSL VPN connections without root.
  • Profiles for organization, school, and self-hosted VPN gateways.
  • Saved credentials and automatic login for repeat connections.
  • RSA SecurID and TOTP software token support.
  • Certificate, private-key, client-identity, CSD, PFS, XML POST, DPD, and split-tunneling options.
  • Connection status, byte counters, local IP details, logs, and reconnect handling.
  • Quick Settings tile with a default profile, last-used behavior, or an app selection fallback.
  • Material interface with light and dark themes.
  • Refreshed English, Simplified Chinese, and Traditional Chinese product copy.

Install

OConnect is currently distributed through GitHub Releases. Download the latest APK and open it on a device running Android 6.0 or newer.

GitHub APK installations do not receive updates through an app store. OConnect can check GitHub for new stable releases, but installation still requires user confirmation.

Quick Start

  1. Open OConnect and choose Add VPN profile.
  2. Enter the VPN gateway supplied by your organization.
  3. Review the generated profile name and configure certificates, tokens, or advanced options when required.
  4. Save the profile, choose Connect, and complete the prompts sent by the VPN server.
  5. Open Connection details or the Log view when troubleshooting.
Automatic login behavior

Automatic login reuses credentials saved from a normal login prompt.

  • Ask every time always shows the VPN server login prompt.
  • Use saved credentials when available reuses known fields and asks only for missing or changed prompts.
  • Use saved credentials only never opens a login prompt. The connection stops if required data is missing so the profile can be updated.

Build From Source

Requirements

  • JDK 17 or newer.
  • Android SDK and platform tools.
  • Android NDK r27c (ndk;27.2.12479018).
  • GNU Make, Autoconf, Automake, Libtool, and pkg-config.
  • Git submodules initialized.
git clone https://github.com/pengyue-polaron/oconnect-android.git
cd oconnect-android
git submodule update --init --recursive
make -C external install
./gradlew testDebugUnitTest lintDebug assembleDebug

The native build pins OpenConnect v9.21, stoken v0.93, curl 8.21.0, and the cryptographic dependencies declared by OpenConnect's Android build. Native executables and shared libraries support 16 KB Android page sizes.

Override the NDK location when needed:

make -C external install ANDROID_NDK="$ANDROID_HOME/ndk/27.2.12479018"

The debug APK is written to app/build/outputs/apk/debug/app-debug.apk and can be installed on a connected device with:

adb install -r app/build/outputs/apk/debug/app-debug.apk

Distribution and Project Status

  • Current channel: GitHub Releases.
  • Google Play: not published.
  • F-Droid: preparation in progress; see the packaging notes.
  • Application ID: io.pengyue.oconnect.
  • Minimum Android version: Android 6.0 / API 23.

Brand guidance, packaging notes, and release documentation are indexed in docs/README.md.

Contributing

Issues and pull requests are welcome. Useful contributions include Android and VPN-server compatibility fixes, accessibility polish, translations, F-Droid packaging, and reproducible release signing.

When reporting a connection issue, include the Android version, device model, gateway type if known, and relevant Log output. Never include passwords, private keys, tokens, cookies, or organization secrets.

Security

OConnect can route device traffic through a configured VPN gateway. Only install APKs from a source you trust and only connect to gateways you control or are authorized to use. Report security-sensitive issues privately to the repository owner before opening a public issue.

Lineage and License

OConnect is released under the GPLv2 license. See COPYING and doc/LICENSE.txt.

This project is a maintained fork of the original OpenConnect for Android codebase. Much of the Java code was derived from OpenVPN for Android by Arne Schwabe. The app also includes OpenConnect, GnuTLS, GMP, Nettle, Libxml2, OATH Toolkit, stoken, LibTomCrypt, and cURL components.

About

OConnect — a focused Android client for OpenConnect-compatible SSL VPN gateways.

Resources

Stars

10 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages