Go to file
Harsh Shandilya 4dff537d21
ui: address new databinding requirements
Layouts in differing configurations must agree on their root tags, so we give
both copies of main_activity the same root ID, and adjust the check for
two-pane layout to simply test for nullability. This also changes the inset
dispatch code to use ViewCompat and WindowInsetsCompat since they will adjust
insets based on the SDK level allowing us to abstract away that concern.

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-05-29 12:25:52 +05:30
.idea codestyle: Require atleast 10 references before using star imports 2020-03-19 09:24:48 +05:30
gradle/wrapper build: upgrade to gradle 6.4 and track checksum 2020-05-09 13:15:57 +05:30
tunnel tunnel: add windows-style killswitch semantics for GoBackend 2020-05-04 02:30:44 -06:00
ui ui: address new databinding requirements 2020-05-29 12:25:52 +05:30
.gitignore global: get rid of nonnull gradle hack 2020-03-09 12:19:15 -06:00
.gitmodules Migrate tunnel related classes to tunnel/ Gradle module 2020-03-09 19:24:26 +05:30
build.gradle build: bump to AGP 4.0.0 2020-05-29 12:05:24 +05:30
COPYING global: move to Apache 2.0 2018-07-06 16:28:46 +02:00
gradle.properties build: Improve R8 rules and enable aggressive optimization modes 2020-03-29 10:52:54 +05:30
gradlew build: upgrade to gradle 6.4 and track checksum 2020-05-09 13:15:57 +05:30
README.md tunnel: libwg-go: remove -x option from flock 2020-04-01 22:05:24 -06:00
settings.gradle Rename app module to ui 2020-03-09 19:24:27 +05:30
version.gradle version: bump 2020-04-08 00:02:37 -06:00

Android GUI for WireGuard

Download from the Play Store

This is an Android GUI for WireGuard. It opportunistically uses the kernel implementation, and falls back to using the non-root userspace implementation.

Building

$ git clone --recurse-submodules https://git.zx2c4.com/wireguard-android
$ cd wireguard-android
$ ./gradlew assembleRelease

macOS users may need flock(1).

Embedding

The tunnel library is on JCenter, alongside extensive class library documentation.

implementation 'com.wireguard.android:tunnel:$wireguardTunnelVersion'

The library makes use of Java 8 features, so be sure to support those in your gradle configuration:

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

Translating

Please help us translate the app into several languages on our translation platform.