Go to file
Jason A. Donenfeld e0b4551bca gradle: generate locales for per-app picking
Enable the per-app locale picking menu by adding the right metadata
automatically to the manifest with new AGP automation.

This attempts to follow:
https://developer.android.com/guide/topics/resources/app-languages#use-localeconfig

Using the new AGP feature:
https://developer.android.com/studio/preview/features#automatic-per-app-languages

It appears to work, and it also should squelch the "W AppCompatDelegate:
Checking for metadata for AppLocalesMetadataHolderService : " warnings
on old Android that syphyr pointed out.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-10 19:56:04 +02:00
.idea ui: reformat all code 2023-05-05 13:18:30 +02:00
gradle gradle: bump to agp 8.1.0-beta02 2023-05-10 19:56:00 +02:00
tunnel ui: reformat all code 2023-05-05 13:18:30 +02:00
ui gradle: generate locales for per-app picking 2023-05-10 19:56:04 +02:00
.gitignore build: remove bespoke signing config properties 2023-04-06 17:16:29 +02:00
.gitmodules tools: clean unwanted ELF flags from binaries 2023-04-05 13:50:57 +02:00
build.gradle.kts gradle: convert build files to Kotlin 2023-05-03 00:43:18 +05:30
COPYING global: move to Apache 2.0 2018-07-06 16:28:46 +02:00
gradle.properties version: bump 2023-05-08 16:10:40 +02:00
gradlew gradle: downgrade wrapper to 8.0.1 2023-05-05 12:56:10 +02:00
README.md README: account for java version updates 2023-05-03 14:23:54 +02:00
settings.gradle.kts gradle: convert build files to Kotlin 2023-05-03 00:43:18 +05:30
sync-crowdin.sh build: add crowdin syncer script and use it 2020-10-14 17:16:36 +02: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 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.