AI summary
VPN client built on sing-box-lx with AmneziaWG 2.0 and native XHTTP support. Manages multiple subscriptions, offers smart routing, load balancing, Wi-Fi-aware rules, and a built-in speed test. Supports protocols including VLESS, VMess, Trojan, Hysteria2, WireGuard, and Cloudflare WARP. v2.20.2 is functionally identical to v2.20.1 — an empty release with no changes.
Generated by AI. May contain inaccuracies.
Screenshots
About this app
Android VPN client powered by sing-box-lx — a sing-box fork with AmneziaWG 2.0 and native XHTTP. Multi-subscription, smart routing, built-in speed test.
Features • Servers & Subscriptions — manage proxy sources in one place • Get WARP — one-tap Cloudflare WARP, keys generated on-device • Subscription auto-update — 4 triggers, hard gates against spam • Home Screen — connect and manage nodes • Quick Connect — toggle VPN without opening the app (v1.5.0) • Routing — unified rule model (v1.4.0) • Load balancing — spread traffic across a pool of servers (v2.7.0) • Wi-Fi-aware routing — different rules on different networks (v1.7.3) • Detour Servers — chain proxies for extra privacy • DNS Settings — full control over name resolution • DPI Bypass — bypass censorship • Haptic Feedback — vibro on VPN events • Speed Test — measure your connection • Statistics & Connections — see what's happening • Per-app traffic profiler — trace any app's network in real time (v1.7.0) • On-device core profiling (pprof) — catch CPU spin & memory leaks (v2.7.0) • VPN Settings — tune the engine • Config Editor — for power users • App Settings — personalize
Supported Protocols: + VLESS + VMess + Trojan + Shadowsocks + Hysteria2 + TUIC v5 + NaïveProxy + SSH + SOCKS + WireGuard / AmneziaWG + MASQUE (Cloudflare WARP) + XHTTP
What's new
- An empty release — cut by mistake, changes nothing. The APK is functionally identical to v2.20.1: no reason to install it, no harm if you do.
- What happened While working towards byte-for-byte reproducibility for F-Droid, two native libraries came out with different .note.gnu.build-id values on the two sides. The fix looked obvious: pass --build-id=sha1 so the id is derived from the file contents instead of being assigned at random.
- That flag was already in place. The NDK sets it unconditionally for every CMake build (build/cmake/flags.cmake) and always has — libdartjni.so has carried the same build id since v2.19.7. The hook added in this release duplicated a default and changed nothing; it has been removed.
- The differing ids therefore come from the input to the linker, not from the algorithm. That work continues.
- What this means for you Nothing. Same code, same behaviour as v2.20.1.
About this version
- Version
- 2.20.2 (22002502)
- Size
- 38.99 MB
- Requires Android
- 7.0
- Target SDK
- 24
- Architecture
- arm64-v8a
- Downloads
- 8
- Updated
- Aug 5, 2026
- Package
- com.leadaxe.lxbox
Similar apps
Ratings & reviews
- 50
- 40
- 30
- 20
- 10