- Android API 34 & Gradle 8.6 & NDK 26.2.11394342.
- Rich DNS modes, you can choose conservatively, safely or fastly.
- Many ways to test connectivity, including ICMP, TCP ping and URL test.
- Powerful TCP Brutal congestion control algorithm provides fast speed.
- Route based on WI-FI status.
- Trust the certificate list trusted by Mozilla to prevent certain hijacks.
Is husi not in your language, or the translation is incorrect or incomplete? Get involved in the translations on our Weblate.
git clone https://github.com/xchacha20-poly1305/husi.git --depth=1
cd husi/
./run lib source # Will help you to get submodules
Environment:
- go (should be as up-to-date as possible)
Run:
./run lib core
This will generate app/libs/libcore.aar
.
If gomobile is not in the GOPATH, it will be automatically downloaded and compiled.
If you don't want to build it, you can download then in actions
Ensure that the Node environment is set up correctly (with bun, etc.).
./run lib dashboard
Environment:
- jdk-17-openjdk
- ndk 26.2.11394342
If the environment variables $ANDROID_HOME
and $ANDROID_NDK_HOME
are not set, you can run the script buildScript/init/env_ndk.sh
:
echo "sdk.dir=${ANDROID_HOME}" > local.properties
Signing preparation (optional, it is recommended to sign after compilation): Replace release.keystore
with your own keystore.
echo "KEYSTORE_PASS=" >> local.properties
echo "ALIAS_NAME=" >> local.properties
echo "ALIAS_PASS=" >> local.properties
Download geo resource files:
./run lib assets
Compile the release version:
./gradlew app:assembleFossRelease
The APK file will be located in app/build/outputs/apk
.
Core:
Android GUI:
- shadowsocks/shadowsocks-android
- SagerNet/SagerNet
- XTLS/AnXray
- MatsuriDayo/NekoBoxForAndroid
- SagerNet/sing-box-for-android
- AntiNeko/CatBoxForAndroid
- MetaCubeX/ClashMetaForAndroid
Web Dashboard: