# QQ-Messenger **Repository Path**: sphuang/qq-messenger ## Basic Information - **Project Name**: QQ-Messenger - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-02 - **Last Updated**: 2026-04-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # QQ即时通讯 一个跨平台的P2P即时通讯软件,支持Windows、Linux、macOS、Android和iOS平台。 ## 项目概述 QQ即时通讯是一个使用Flutter + Go技术栈开发的跨平台即时通讯应用,具有以下特性: - **跨平台支持**: 支持Windows、Linux、macOS、Android和iOS - **P2P通信**: 使用WebRTC实现实时点对点通信 - **即时消息**: 支持文本消息、文件传输等功能 - **端到端加密**: 保障通信安全 - **离线消息**: 支持离线消息存储和同步 ## 技术架构 ### 前端 (Flutter) - 使用Dart语言和Flutter框架 - 支持Material Design - 实现实时消息界面 - 集成WebRTC进行P2P连接 ### 后端 (Go) - 使用Gin框架提供REST API - WebSocket实现实时通信 - 消息存储和历史记录 - 用户管理功能 - 信令服务器(用于WebRTC) ## 当前开发状态 ### 已完成功能 - ✅ 基础消息传递功能 - ✅ WebSocket实时通信 - ✅ P2P连接管理器(WebRTC) - ✅ 信令服务器 - ✅ 消息历史记录 - ✅ 用户管理系统 - ✅ 端到端加密 - ✅ 桌面端支持(Windows、Linux、macOS) - ✅ 界面中文本地化 ### 正在开发功能 - 🔧 P2P连接优化(NAT穿透) - 🔧 移动端支持(Android、iOS) - 🔧 文件传输功能 - 🔧 群聊功能 ## 快速开始 ### 环境要求 - Go 1.19+ - Flutter 3.0+ - Windows 10+ (开发环境) ### 运行步骤 #### 方法1:使用一键启动脚本 双击运行 `START_HERE.bat` 文件,它会自动启动服务器和客户端。 #### 方法2:手动启动 1. 启动服务器: ```bash cd go_server go run main.go ``` 2. 启动客户端: ```bash cd flutter_app flutter run -d windows # Windows flutter run -d linux # Linux flutter run -d macos # macOS ``` ### P2P连接测试 参见 `P2P_TESTING_GUIDE.md` 文档了解如何测试P2P连接功能。 ## 项目结构 ``` QQ-Messenger/ ├── flutter_app/ # Flutter前端应用 │ ├── lib/ # Dart源码 │ │ ├── models/ # 数据模型 │ │ ├── screens/ # UI界面 │ │ ├── services/ # 服务类 │ │ └── main.dart # 应用入口 │ └── pubspec.yaml # 项目配置 ├── go_server/ # Go后端服务 │ ├── handlers/ # HTTP处理器 │ ├── internal/ # 内部包 │ │ ├── messagelogger/ # 消息记录器 │ │ └── usermanager/ # 用户管理器 │ ├── main.go # 服务器入口 │ └── go.mod # Go模块配置 ├── START_HERE.bat # 一键启动脚本 ├── P2P_TESTING_GUIDE.md # P2P测试指南 └── PROGRESS.md # 开发进度 ``` ## 开发计划 ### 近期目标(Week 4-6) - [x] P2P连接增强(WebRTC) - [x] 信令服务实现 - [x] NAT穿透测试 - [ ] TURN服务器支持 ### 中期目标(Week 7-10) - [ ] 端到端加密完善 - [ ] 用户认证系统 - [ ] 文件传输功能 - [ ] 消息同步功能 ### 长期目标(Week 11+) - [ ] 移动端支持 - [ ] 群聊功能 - [ ] 语音/视频通话 - [ ] 离线消息推送 ## 贡献 欢迎贡献代码和提出建议!请遵循以下步骤: 1. Fork 项目 2. 创建功能分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 创建 Pull Request ## 许可证 此项目仅供学习和参考使用。