flutter_v2ray_client 3.1.0
flutter_v2ray_client: ^3.1.0 copied to clipboard
Flutter client plugin for Xray/V2Ray on Android (VPN mode & proxy-only) with modernized API and docs.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
3.1.0 #
Changed #
- Core: Updated xray-core to v25.12.2
- Build: Updated build configurations for better compatibility
- Dependencies: Resolved conflicts with
openvpn_flutterpackage - Compatibility: Added support for using alongside OpenVPN in the same application
3.0.0 #
Added #
- Log Management: Added V2Ray log viewing and management functionality
- Log Features: Implemented log filtering, copying, and clearing
- Example App: Added "View Logs" page to the example app
- Documentation: Updated with new log viewing feature details and usage examples
Changed #
- Build: Updated Gradle to 8.14 and Kotlin to 2.1.0
- Build: Updated Android Gradle Plugin to 8.13.0
- Build: Updated compiled SDK to 35
- Core: Updated xray-core to v25.10.15 (b69a376)
- Compatibility: Improved compatibility with latest Flutter versions
Fixed #
- Android: Fixed VPN permission race conditions
- Android: Added null safety in V2rayVPNService.onStartCommand
- Service: Improved service reliability with better error handling
- Connection: Fixed mode switching between VPN and proxy modes
- Broadcast: Fixed broadcast receiver registration issues
- Activity: Added proper activity lifecycle handling
- Notifications: Added silent mode when notification permissions are denied
- Memory: Fixed potential memory leaks in service lifecycle
Performance #
- Service: Improved service stability with better error handling
- Logging: Enhanced logging for debugging service lifecycle issues
- Error Handling: Added comprehensive error handling throughout the codebase
2.0.0 #
1.1.0 #
Added #
- Enhanced VPN Protection: Implemented robust Android VPN socket protector to prevent connection loops
- IPv6 Support: Added IPv6 preference option for server connections
- Socket Management: Introduced outbound socket management with automatic IP failover
- Cross-Platform Builds: Android-only build tags for seamless development across platforms
Changed #
- Dependencies: Updated to
golang.org/x/sysfor Android unix syscalls - Core Integration: Improved Java/Go integration for better reliability
- Documentation: Added comprehensive guide for VPN protector implementation
Fixed #
- Connection Stability: Resolved issues with VPN socket routing
- Build System: Ensured compatibility with non-Android platforms
1.0.0 #
Added #
- Initial Release: Comprehensive Flutter plugin for V2Ray/Xray client functionality
- VPN & Proxy Modes: Support for both VPN tunneling and proxy-only connections on Android
- Server Delay Testing: Built-in functionality to measure outbound and connected server delays
- URL Parsing: Robust parsers for VMess, VLess, Trojan, Socks, and ShadowSocks protocols
- Configuration Editing: Flexible API to modify V2Ray inbound/outbound settings, DNS, and routing
- Live Status Monitoring: Real-time updates for connection state, upload/download speeds, traffic data, and duration
- Socket Protection: Built-in Android VPN socket protection for secure tunneling
- App Exclusion: Ability to exclude specific Android apps from VPN traffic (blockedApps)
- LAN Traffic Bypass: Support for bypassing local network traffic with custom subnet lists
- Notification Integration: Customizable VPN notifications with icon resources
- Permission Handling: Automatic Android VPN permission requests
- Event-Based Updates: Callback system for status changes and connection events
- Modernized API: Clean, documented API with comprehensive Dartdoc comments
- Example Application: Complete Flutter app demonstrating all features and usage patterns
- Android Compatibility: Full support for Android 16 KB page size (required for Google Play)
- Cross-Platform Foundation: Platform interface architecture ready for iOS/Windows/Linux/macOS expansion
Changed #
- Flutter Compatibility: Upgraded to Flutter 3.16.0+ and Dart 3.1.0+
- Code Quality: Improved lint compliance with flutter_lints and comprehensive documentation
- Build System: Gradle 7.4 integration with Android NDK 26.3 support
Technical Details #
- Android Implementation: Xray 25.9.11 integration with method channels
- Plugin Architecture: Extends plugin_platform_interface for platform abstraction
- Dependencies: Minimal external dependencies for stability
- Testing: flutter_test integration for unit and widget testing
- Licensing: Open-source MIT license for community adoption
Roadmap Highlights #
- Performance: Planned integration with hev-socks5-tunnel for enhanced speed and efficiency
- Multi-Platform: Foundation laid for iOS, Windows, Linux, and macOS support (community-driven via donations)
- Advanced Features: Traffic routing, filtering, and UI components in development
Attribution #
This project builds upon third-party libraries and open-source contributions. See ATTRIBUTION.md for detailed credits.
Notes #
- Android is the primary supported platform; other platforms marked as "Coming Soon"
- Community contributions welcome for accelerating multi-platform development