# ChaTime **Repository Path**: DragonFtop/Chatime ## Basic Information - **Project Name**: ChaTime - **Description**: 这是豆包小组开发的第一个鸿蒙应用:古风社交聊天聊天软件:ChaTime - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 17 - **Forks**: 1 - **Created**: 2025-07-16 - **Last Updated**: 2025-12-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ChaTime - 茶话时光 一个基于HarmonyOS 5.1.0开发的茶文化社交应用,支持用户聊天、分享动态、管理好友等功能。 ## 功能特性 ### 🔐 用户认证 - **登录功能**: 支持手机号和密码登录,验证成功后进入主界面 - **注册功能**: 支持新用户注册,包含手机号、昵称、密码等必填信息 - **自动登录**: 应用启动时自动检查登录状态,已登录用户直接进入主界面 ### 💬 聊天功能 - **聊天列表**: 显示所有聊天会话,支持右滑操作(置顶、删除) - **实时聊天**: 支持发送文本消息和图片消息 - **头像跳转**: 点击聊天列表中的头像可进入对应用户的个人页面 - **消息记录**: 保存聊天历史记录,支持消息状态显示 ### 👥 好友管理 - **好友列表**: 显示所有好友信息,包括在线状态 - **搜索好友**: 支持按昵称或签名搜索好友 - **好友聊天**: 点击好友可直接进入聊天界面 ### 📱 动态分享 - **动态浏览**: 浏览所有用户发布的动态内容 - **点赞评论**: 支持对动态进行点赞和评论操作 - **发布动态**: 支持发布文字和图片动态(功能开发中) ### 👤 个人中心 - **个人信息**: 显示用户头像、昵称、签名、关注数等信息 - **编辑资料**: 支持修改昵称、个性签名等个人信息 - **收藏管理**: 管理个人收藏的内容 - **照片展示**: 展示个人照片墙 ### 🔍 其他功能 - **用户页面**: 查看其他用户的个人资料 - **导航系统**: 完整的页面导航和返回功能 - **数据持久化**: 使用MySQL数据库存储用户数据 ## 技术架构 ### 前端技术栈 - **HarmonyOS 5.1.0**: 使用最新的HarmonyOS SDK - **ArkTS**: 使用ArkTS语言开发 - **Stage模型**: 采用Stage应用模型 - **声明式UI**: 使用声明式UI构建界面 ### 后端技术栈 - **MySQL**: 关系型数据库,存储用户数据和业务数据 - **HTTP API**: RESTful API接口,支持前后端数据交互 - **数据模型**: 完整的数据模型设计,支持复杂业务逻辑 ### 核心组件 - **DatabaseService**: 数据库服务类,处理所有数据操作 - **UserManager**: 用户状态管理,处理登录状态和用户信息 - **DataModels**: 数据模型定义,确保类型安全 - **路由系统**: 完整的页面路由配置 ## 数据库设计 ### 主要数据表 - `users`: 用户信息表 - `friends`: 好友关系表 - `chat_messages`: 聊天消息表 - `chat_sessions`: 聊天会话表 - `dynamics`: 动态内容表 - `dynamic_likes`: 动态点赞表 - `dynamic_comments`: 动态评论表 ### 数据关系 - 用户与好友:多对多关系 - 用户与消息:一对多关系 - 用户与动态:一对多关系 - 动态与评论:一对多关系 ## 安装和部署 ### 环境要求 - HarmonyOS 5.1.0 SDK - DevEco Studio 4.0+ - MySQL 8.0+ ### 数据库部署 1. 安装MySQL数据库 2. 执行 `database/chatime.sql` 脚本创建数据库和表 3. 配置数据库连接信息 ### 应用部署 1. 克隆项目到本地 2. 在DevEco Studio中打开项目 3. 配置数据库连接地址(修改 `DatabaseService.ets` 中的 `baseUrl`) 4. 编译并运行应用 ## 项目结构 ``` Chatime/ ├── entry/ # 应用入口 │ └── src/main/ets/ │ ├── pages/ # 页面组件 │ │ ├── Loading.ets # 加载页面 │ │ ├── Welcome.ets # 欢迎页面 │ │ ├── Login.ets # 登录页面 │ │ ├── Register.ets # 注册页面 │ │ ├── Layout.ets # 主布局页面 │ │ ├── Chat.ets # 聊天列表页面 │ │ ├── Chating.ets # 聊天详情页面 │ │ ├── Friend.ets # 好友列表页面 │ │ ├── Dynamic.ets # 动态页面 │ │ ├── Mine.ets # 个人中心页面 │ │ ├── Others.ets # 其他用户页面 │ │ ├── EditProfile.ets # 编辑资料页面 │ │ └── UIcomponent.ets # 通用UI组件 │ ├── services/ # 服务层 │ │ └── DatabaseService.ets # 数据库服务 │ ├── models/ # 数据模型 │ │ └── DataModels.ets # 数据模型定义 │ └── utils/ # 工具类 │ └── UserManager.ets # 用户管理工具 ├── database/ # 数据库脚本 │ └── chatime.sql # MySQL数据库脚本 └── README.md # 项目说明文档 ``` ## 开发规范 ### 代码规范 - 严格遵循HarmonyOS 5.1.0 SDK规范 - 使用TypeScript类型定义,确保类型安全 - 采用组件化开发,提高代码复用性 - 统一的命名规范和代码风格 ### API设计 - RESTful API设计原则 - 统一的响应格式 - 完善的错误处理机制 - 支持分页和搜索功能 ### 安全考虑 - 密码加密存储 - 用户身份验证 - 数据访问权限控制 - 输入数据验证 ## 功能演示 ### 登录流程 1. 启动应用 → 加载页面 → 检查登录状态 2. 未登录 → 欢迎页面 → 点击登录 → 登录页面 3. 输入手机号和密码 → 验证成功 → 进入主界面 ### 聊天功能 1. 主界面 → 茶馆 → 聊天列表 2. 点击聊天项 → 聊天详情页面 3. 输入消息 → 发送文本或图片 4. 点击头像 → 用户个人页面 ### 好友管理 1. 主界面 → 茶友 → 好友列表 2. 搜索框输入关键词 → 实时搜索 3. 点击好友 → 直接进入聊天 ### 个人中心 1. 主界面 → 个人 → 个人资料 2. 点击更多按钮 → 编辑资料页面 3. 修改信息 → 保存更新 ## 未来规划 ### 功能扩展 - [ ] 实时消息推送 - [ ] 语音消息支持 - [ ] 视频通话功能 - [ ] 群聊功能 - [ ] 动态发布功能完善 - [ ] 图片上传和管理 ### 技术优化 - [ ] 性能优化 - [ ] 内存管理优化 - [ ] 网络请求优化 - [ ] 数据缓存策略 - [ ] 离线功能支持 ### 用户体验 - [ ] 界面动画优化 - [ ] 主题切换功能 - [ ] 多语言支持 - [ ] 无障碍功能 - [ ] 深色模式 ## 贡献指南 欢迎提交Issue和Pull Request来改进项目。 ### 开发流程 1. Fork项目 2. 创建功能分支 3. 提交代码变更 4. 创建Pull Request ### 代码审查 - 确保代码符合项目规范 - 添加必要的测试用例 - 更新相关文档 ## 许可证 本项目采用MIT许可证,详见LICENSE文件。 ## 联系方式 如有问题或建议,请通过以下方式联系: - 提交Issue - 发送邮件 - 项目讨论区 --- **ChaTime** - 让茶文化在数字时代焕发新活力 🌿