V8Ray是一个基于Xray Core的现代化跨平台代理客户端,提供安全、高效、易用的网络代理服务。支持iOS、Android、鸿蒙、Windows、macOS、Linux等主流平台。
当前版本: v0.2.11 - macOS 库加载调试 (print) 🍎
发布日期: 2025-12-22
开发进度:
- ✅ Sprint 0: 环境搭建和基础架构 (已完成 - 2025-10-11)
- ✅ Sprint 1: Rust核心基础 (已完成 - 2025-10-11)
- ✅ Sprint 2-6: MVP 开发 (已完成 - 2025-10-14)
- ✅ Sprint 7: 高级模式UI完善 (已完成 - 2025-12-21)
- 🔄 Sprint 8: 节点管理增强 (进行中)
- ⏳ Sprint 9-12: 平台适配和优化 (计划中)
v0.2.2 新增内容 (2025-12-21):
高级模式UI完整实现:
- ✅ 5个功能标签页(仪表板、节点、订阅、日志、设置)
- ✅ TabBar 标签页导航系统
- ✅ 仪表板页面(连接信息、流量统计、快速操作)
- ✅ 设置页面(基础设置、代理设置、通知设置、高级设置)
- ✅ 简单模式 ↔ 高级模式切换
- ✅ 60+ 国际化翻译键(中英文)
- ✅ 响应式设计(桌面/平板/移动端适配)
- ✅ Material Design 3 设计风格
订阅管理标签页:
- ✅ 订阅列表卡片式布局
- ✅ 添加/编辑/删除订阅功能
- ✅ 单个和批量更新订阅
- ✅ 订阅详情底部弹窗
- ✅ 搜索过滤功能
节点管理增强:
- ✅ 单个节点延迟测试
- ✅ 批量延迟测试(带进度显示)
- ✅ 延迟颜色编码(绿色<100ms, 橙色<300ms, 红色>300ms)
- ✅ 节点排序(按延迟/名称/协议)
- ✅ 节点过滤(全部/可用/不可用)
日志查看页面:
- ✅ 日志级别过滤
- ✅ 日志搜索功能
构建和兼容性:
- ✅ 升级 Flutter 到 3.38.5(支持 Visual Studio 2026)
- ✅ 增强构建脚本 Xray Core 下载
- ✅ 放宽 CI/CD 检查(编译优先)
Bug 修复:
- ✅ 修复 Linux 系统代理设置问题
- ✅ 修复 macOS UI 显示问题
- ✅ 修复 TextField 编译错误
v0.2.1 新增内容 (2025-10-15):
系统代理优化:
- ✅ 使用 SOCKS5 代理替代 HTTP/HTTPS 代理
- ✅ 更好的应用兼容性和协议支持
- ✅ 适用于所有平台(Windows、macOS、Linux)
用户体验改进:
- ✅ 连接时锁定代理模式选择器
- ✅ 防止误操作导致连接中断
- ✅ 清晰的视觉反馈和提示信息
数据持久化:
- ✅ 应用启动时自动加载数据库配置
- ✅ 保持上次使用的订阅和服务器
v0.2.0 新增内容 (2025-10-15):
自动更新功能:
- ✅ 应用自动更新(从 GitHub Releases)
- ✅ Xray Core 自动更新(从 XTLS/Xray-core)
- ✅ 智能平台检测和文件下载
- ✅ 实时下载进度显示
- ✅ 自动安装和权限设置
- ✅ Windows 自动重启支持
- ✅ 统一的更新入口 UI
- ✅ 完善的错误处理和重试机制
版本管理优化:
- ✅ 统一版本号管理
- ✅ 自动生成 User-Agent 字符串
- ✅ 版本信息集中配置
Bug 修复:
- ✅ 修复了无法连接 Shadowsocks 和 Trojan 协议服务器的问题
- ✅ 修复了节点名称中特殊字符的解码问题
- ✅ 完善了 URL 解析和参数处理
v0.1.0 核心功能 (2025-10-14):
- ✅ 代理连接/断开功能
- ✅ 订阅管理(添加、更新、删除)
- ✅ 节点自动解析和选择
- ✅ 系统代理自动配置
- ✅ 代理模式切换(全局/智能分流/直连)
- ✅ 多协议支持(VMess、VLESS、Trojan、Shadowsocks)
- ✅ 多订阅格式(Base64、V2Ray JSON、Clash YAML)
- ✅ 简单模式完整实现
- ✅ 中英文国际化
- ✅ 浅色/深色主题
平台支持:
- ✅ Linux (Ubuntu 20.04+) - 完全支持
- ✅ Windows 10+ - 已验证支持
- ⏳ macOS 12+ - 待测试
技术实现:
- ✅ Rust 后端核心逻辑
- ✅ Flutter 跨平台 UI
- ✅ FFI 桥接(Flutter Rust Bridge 2.11.1)
- ✅ SQLite 数据持久化
- ✅ Riverpod 状态管理
- ✅ Xray Core 集成
- ✅ 异步架构(Tokio)
- ✅ 结构化日志系统
- ✅ 统一错误处理
Bug 修复:
- ✅ 系统代理配置问题
- ✅ Xray 进程权限问题
- ✅ 日志系统 release 模式问题
- ✅ 节点名称解析和显示问题
- ✅ UI 导航和交互问题
发布时间: 2025-10-14 | 状态: 稳定版 | 平台: Linux
- ✅ 一键连接: 简单模式下一键连接代理服务器
- ✅ 订阅管理: 支持添加、更新、删除订阅源
- ✅ 自动配置: 连接时自动启用系统代理,断开时自动禁用
- ✅ 多协议支持: VMess、VLESS、Trojan、Shadowsocks
- ✅ 智能路由: 支持全局、智能分流
- ✅ 节点管理: 自动解析订阅中的所有节点
- ✅ 国际化: 支持中文和英文界面
- 🔒 安全: AES-256-GCM 加密存储敏感配置
- ⚡ 高性能: Rust 后端 + 异步架构
- 🎨 现代化 UI: Flutter Material Design 3
- 🔧 易维护: 统一的错误处理和日志系统
- 📦 开箱即用: 自动下载 Xray Core,无需手动配置
- 🎯 极简操作: 简单模式只需 3 步即可连接
- 🌍 多语言: 应用内一键切换中英文
- 🎨 主题支持: 自动适配系统浅色/深色主题
- 📊 状态显示: 实时显示连接状态和节点信息
详细更新日志请查看 CHANGELOG.md
- 多协议支持: VLESS、VMess、Trojan、Shadowsocks、HTTP、SOCKS等
- 多传输方式: TCP、mKCP、WebSocket、HTTP/2、gRPC、QUIC等
- 智能路由: 支持域名、IP、地理位置等多种路由规则
- 负载均衡: 多服务器负载均衡和故障转移
- 订阅管理: 支持多订阅源自动更新和分组管理
- 移动端: iOS 14+、Android 7+、鸿蒙 4.0+
- 桌面端: Windows 10+、macOS 12+、Linux (Ubuntu 20.04+)
- 统一体验: 所有平台保持一致的用户界面和功能
- 数据加密: 本地配置数据AES-256加密存储
- 传输安全: 所有网络传输使用TLS加密
- 隐私保护: 不收集用户隐私数据
- 权限控制: 最小权限原则
- 快速启动: 应用启动时间<3秒
- 低延迟: 代理延迟增加<50ms
- 低资源: 移动端内存使用<100MB
- 智能连接: 自动选择最优节点
- 双模式设计: 简单模式和高级模式自由切换
- 简单模式: 极简操作,一键连接,适合普通用户
- 高级模式: 完整功能,专业配置,适合高级用户
- 明暗主题: 支持浅色和深色主题切换
- 默认语言: English (英文)
- 支持语言: 简体中文 (Simplified Chinese)
- 语言切换: 应用内一键切换语言
- 本地化: 所有UI文本完全本地化
- iOS: iOS 14.0+ / iPadOS 14.0+
- Android: Android 7.0+ (API Level 24+)
- 鸿蒙: HarmonyOS 4.0+
- Windows: Windows 10 1903+ (64位)
- macOS: macOS 12.0+ (Intel/Apple Silicon)
- Linux: Ubuntu 20.04+, Debian 11+, Fedora 35+
- 前端: Flutter 3.16+ / Dart 3.2+
- 后端: Rust 1.75+ / Xray Core
- 状态管理: Riverpod 2.4+
- 存储: SQLite + Hive + Secure Storage
- 网络: Dio + HTTP/2
- 桥接: Flutter Rust Bridge 2.0+
┌─────────────────────────────────────────────────────────────┐
│ Flutter UI Layer (简单/高级模式) │
├─────────────────────────────────────────────────────────────┤
│ Flutter Business Layer (Dart) │
├─────────────────────────────────────────────────────────────┤
│ Flutter-Rust Bridge (FFI) │
├─────────────────────────────────────────────────────────────┤
│ Rust Core Layer (业务逻辑) │
├─────────────────────────────────────────────────────────────┤
│ Platform Adapter (平台适配) │
├─────────────────────────────────────────────────────────────┤
│ Xray Core Engine (代理核心) │
└─────────────────────────────────────────────────────────────┘
v8ray/
├── docs/ # 项目文档
│ ├── requirements.md # 需求说明书
│ ├── architecture.md # 系统架构设计
│ └── technical-architecture.md # 技术架构详细设计
├── core/ # Rust核心模块
│ ├── src/ # Rust源代码
│ │ ├── bridge/ # Flutter桥接
│ │ ├── xray/ # Xray Core集成
│ │ ├── config/ # 配置管理
│ │ └── platform/ # 平台适配
│ └── Cargo.toml # Rust项目配置
├── app/ # Flutter应用
│ ├── lib/ # Dart源代码
│ │ ├── core/ # 核心模块
│ │ ├── data/ # 数据层
│ │ ├── domain/ # 业务层
│ │ ├── presentation/ # 表现层
│ │ └── platform/ # 平台适配
│ ├── android/ # Android项目
│ ├── ios/ # iOS项目
│ ├── windows/ # Windows项目
│ ├── macos/ # macOS项目
│ ├── linux/ # Linux项目
│ └── harmony/ # 鸿蒙项目
└── platform/ # 平台特定模块
├── android/ # Android VPN服务
├── ios/ # iOS NetworkExtension
├── windows/ # Windows TUN
├── macos/ # macOS NetworkExtension
├── linux/ # Linux TUN/TAP
└── harmony/ # 鸿蒙VPN Kit
前置要求:
- Flutter SDK 3.16+
- Rust 1.75+
- Git
- Dart SDK (Flutter 自带)
- 安装Flutter SDK
# 下载并安装Flutter 3.16+
git clone https://github.com/flutter/flutter.git -b stable
export PATH="$PWD/flutter/bin:$PATH"
flutter doctor- 安装Rust环境
# 下载并安装Rust 1.75+
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source ~/.cargo/env
rustup update- 克隆项目
git clone [email protected]:v8ray/v8ray.git
cd v8ray- 安装依赖
# Flutter依赖
cd app
flutter pub get
# Rust依赖
cd ../core
cargo build项目提供了便捷的 Makefile 命令:
# 安装所有依赖(首次运行)
make setup
# 生成 FFI 桥接代码
make bridge
# 构建 debug 版本
make build-debug
# 构建 release 版本
make build-release
# 运行应用(debug 模式)
make run
# 清理构建产物
make clean
# 深度清理(包括下载的文件)
make clean-all如果不使用 Makefile,可以手动执行以下步骤:
- 生成 Flutter Rust Bridge 代码(首次构建或更新代码后)
flutter_rust_bridge_codegen generate- 构建 Rust 库
cd core
cargo build --release --lib- 构建 Flutter 应用
cd app
flutter build linux --release # Linux
flutter build windows --release # Windows
flutter build macos --release # macOS- 下载 Xray Core
# Linux/macOS
bash scripts/post_build.sh release
# Windows
scripts\post_build.bat releaseLinux:
# Debug 模式
./app/build/linux/x64/debug/bundle/v8ray
# Release 模式
./app/build/linux/x64/release/bundle/v8rayWindows:
# Debug 模式
.\app\build\windows\x64\runner\Debug\v8ray.exe
# Release 模式
.\app\build\windows\x64\runner\Release\v8ray.exemacOS:
# Debug 模式
./app/build/macos/Build/Products/Debug/v8ray.app/Contents/MacOS/v8ray
# Release 模式
./app/build/macos/Build/Products/Release/v8ray.app/Contents/MacOS/v8ray- CHANGELOG.md - 版本更新日志
- 用户指南 - 用户使用手册(待完善)
- 需求说明书 - 详细的功能需求和用户故事
- 系统架构设计 - 整体架构和设计原则
- 技术架构文档 - 技术选型和模块设计
- 项目结构规划 - 目录结构和开发环境
- 开发计划 - 敏捷开发计划和Sprint规划
- Sprint 1 进度报告 - Sprint 1详细进度
- Sprint 1 完成总结 - Sprint 1成果总结
我们欢迎所有形式的贡献!请阅读 贡献指南 了解如何参与项目开发。
- Fork 项目
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 创建 Pull Request
- 遵循 Dart Style Guide
- 遵循 Rust Style Guide
- 使用
flutter analyze和cargo clippy进行代码检查 - 使用
dart format和cargo fmt进行代码格式化 - 确保测试覆盖率 > 80%
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
- Xray Core - 强大的代理核心
- Flutter - 优秀的跨平台UI框架
- Rust - 安全高效的系统编程语言
- Flutter Rust Bridge - Flutter与Rust的桥接方案
- 项目主页: https://github.com/v8ray/v8ray
- 问题反馈: Issues
- 讨论交流: Discussions
注意: 本软件仅供学习和研究使用,请遵守当地法律法规,不得用于非法用途。