Skip to content

v3.2.0

Choose a tag to compare

@amir-zr amir-zr released this 26 Apr 11:09
· 5 commits to main since this release

🚀 Flutter V2Ray Client v3.2.0

We’re happy to share Flutter V2Ray Client v3.2.0, built around a major Xray v26.4.17 upgrade. This release brings native TUN-based Android VPN, new transport and obfuscation options, and stronger TLS/REALITY and DNS behavior on mobile—while trimming memory use and improving Android stability in real-world and background sessions.


🔄 Xray Core v26.4.17

  • Upgraded from v25.12.2 to v26.4.17 (embedded core)
  • Android ships an updated libv2ray and refreshed V2rayCoreManager to match the new APIs and features

🏗️ Architecture (Android VPN / TUN)

  • TUN inbound via VpnService: system-wide traffic over a TUN interface
  • Process-based routing: route traffic by app/process where Android allows it, for more control in VPN use cases

🧩 New Protocols & Obfuscation

  • Hysteria2: high-throughput UDP-based transport, tuned for shaky mobile networks
  • UDPhop: dynamic UDP port hopping under blocking or throttling
  • Salamander obfuscation layer: extra shaping against mobile DPI
  • FinalMask–style obfuscation: custom HTTP/TCP behavior, TCP fragmentation, UDP noise, and randomized traffic patterns to resist fingerprinting and DPI

🔐 Security, DNS & Reliability

  • Replaces the insecure TLS path with certificate pinning using pinnedPeerCertSha256
  • REALITY: better handling of invalid or intercepted certificates and stronger MITM protection on untrusted and mobile links
  • XDNS and routing improvements for mobile, aligned with TUN, with cleaner behavior on WiFi ↔ mobile data switches

📉 Performance & Android TUN

  • Lower memory (geodata handling) and fewer Android crash scenarios
  • Stabler TUN through the VPN Service stack: less packet loss on high-latency paths, better under background limits, and fewer stalls and races in typical mobile conditions

🛠️ Plugin Integration

  • Android: new libv2ray (AAR) and V2rayCoreManager wired to the features above; rebuild the app so native code and Gradle pick up the update

🔄 Compatibility Notes

  • Requirements (unchanged from recent releases): Android API 21+, Flutter 3.16+; still reasonable to use alongside OpenVPN when your project is set up for that (as in 3.1.0)
  • Migration from 3.1.0
    • No API contract break is implied for typical Dart usage; the big shift is the new core and native stack
    • Clean rebuild after flutter clean and dependency refresh
    • Re-test VPN/Proxy flows and any Xray config that used deprecated options (e.g. old insecure TLS) in favor of pinning

📝 Testing Recommendations

  • VPN mode and TUN stability: cold start, reconnect, WiFi ↔ cellular handoff
  • Hysteria2 / UDPhop / obfuscation with your real server and blocking profiles
  • Long sessions and background to confirm fewer stalls and acceptable memory use
  • OpenVPN in the same app (if you rely on 3.1.0’s compatibility) after upgrading

🙏 Acknowledgments

Thanks to everyone who uses and reports on Flutter V2Ray Client—each release is stronger because of your feedback.

Report issues ·
View documentation ·
Changelog