3b1673584b6e7ebba3bf6634b5881002b928035a
When other projects copy and paste all of WireGuard and then tweak it, some idiots leave the updater code in, resulting in useless requests going to my server. In some cases this has even resulted in a DoS because of further confusions. To cut down on this, hardcode the usual package name prefix, and abort with a really silly exception if it doesn't match. This will lead copy and pasters to this comment, which hopefully they read. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Android GUI for WireGuard
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 Maven Central, 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 with desugaring:
compileOptions {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
coreLibraryDesugaringEnabled = true
}
dependencies {
coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.0.3"
}
Translating
Please help us translate the app into several languages on our translation platform.
Releases
2
Languages
Kotlin
51.9%
Java
44.2%
Python
1.5%
Go
0.9%
C
0.5%
Other
0.9%