330 lines
12 KiB
Markdown
330 lines
12 KiB
Markdown
# Android 与 Web 端功能对齐计划
|
||
|
||
## 一、功能差异分析
|
||
|
||
### Web 端功能清单(60+ 页面)
|
||
|
||
| 模块 | 页面 | 路由 | 核心功能 |
|
||
|------|------|------|----------|
|
||
| **首页** | Home | `/` | Hero区域、快捷入口、最新更新日志、热门API、精选文章、学习路径、实用工具 |
|
||
| **学习** | Learn | `/learn` | 课程分类筛选、难度筛选、排序、收藏、分页 |
|
||
| | CourseLearn | `/course-learn` | 课程详情学习页 |
|
||
| **工具集** | Utility | `/utility` | 工具分类、搜索、排序、收藏、使用次数统计 |
|
||
| | JsonFormatter | `/utility/json-formatter` | JSON格式化 |
|
||
| | Base64Tool | `/utility/base64` | Base64编解码 |
|
||
| | TimestampTool | `/utility/timestamp` | 时间戳转换 |
|
||
| | RegexTool | `/utility/regex` | 正则表达式测试 |
|
||
| | TextDiff | `/utility/text-diff` | 文本对比 |
|
||
| | EncodingConverter | `/utility/encoding-converter` | 编码转换 |
|
||
| | CharsetConverter | `/utility/charset-converter` | 字符集转换 |
|
||
| | ColorConverter | `/utility/color-converter` | 颜色转换 |
|
||
| | CodeFormatter | `/utility/code-formatter` | 代码格式化 |
|
||
| | QRCodeGenerator | `/qrcode-generator` | 二维码生成 |
|
||
| | ImageCompressor | `/utility/image-compressor` | 图片压缩 |
|
||
| | Calculator | `/utility/calculator` | 计算器 |
|
||
| | DateCalculator | `/utility/date-calculator` | 日期计算 |
|
||
| | ImageEditor | `/utility/image-editor` | 图片编辑 |
|
||
| | ColorPicker | `/color-picker` | 颜色选择器 |
|
||
| **API** | ApiDirectory | `/api` | API目录展示 |
|
||
| | ApiDetail | `/api-detail/:id` | API详情 |
|
||
| | ApiDocs | `/api-docs` | API文档 |
|
||
| | ToolDetail | `/tool-detail` | 工具详情 |
|
||
| **文章** | Articles | `/articles` | 文章列表 |
|
||
| | ArticleDetail | `/article/:id` | 文章详情 |
|
||
| | ArticleManage | `/article-manage` | 文章管理 |
|
||
| | ArticleEditor | `/article-editor` | 文章编辑 |
|
||
| **消息** | Messages | `/messages` | 回复、@我、点赞、系统通知 |
|
||
| | SystemMessage | `/system-message` | 系统消息详情 |
|
||
| | Chat | `/chat` | 即时聊天 |
|
||
| **用户** | Profile | `/profile` | 个人资料 |
|
||
| | ProfileEmail | `/profile/email` | 邮箱设置 |
|
||
| | ProfilePhone | `/profile/phone` | 手机号设置 |
|
||
| | ProfileChangePassword | `/profile/change-password` | 修改密码 |
|
||
| | UserHome | `/user/:id` | 用户主页 |
|
||
| | Settings | `/settings` | 系统设置 |
|
||
| | History | `/history` | 历史记录 |
|
||
| | Favorites | `/favorites` | 收藏列表 |
|
||
| | Search | `/search` | 全局搜索 |
|
||
| **钱包** | Points | `/wallet/points` | 积分 |
|
||
| | Coins | `/wallet/coins` | 金币 |
|
||
| | Recharge | `/wallet/coins/recharge` | 充值 |
|
||
| | Invite | `/wallet/invite` | 邀请 |
|
||
| **任务** | TaskCenter | `/task-center` | 任务中心 |
|
||
| **反馈** | Bug | `/bug` | Bug反馈 |
|
||
| | BugDetail | `/bug-detail` | Bug详情 |
|
||
| **其他** | Changelog | `/changelog` | 更新日志 |
|
||
| | IPLocation | `/ip-location` | IP定位 |
|
||
| | CurrencyDetail | `/currency-detail` | 货币详情 |
|
||
| | AQIDetails | `/api/air-quality-details` | 空气质量详情 |
|
||
| | WeatherDetail | `/api/weather-details` | 天气详情 |
|
||
| | ShortUrlDetail | `/shorturl-detail` | 短链接详情 |
|
||
| | Manual | `/manual` | 使用手册 |
|
||
| | Privacy | `/privacy` | 隐私政策 |
|
||
| | UserAgreement | `/agreement` | 用户协议 |
|
||
| | ForgotPassword | `/forgot-password` | 忘记密码 |
|
||
| | InviteRedirect | `/invite/:code` | 邀请重定向 |
|
||
| | Console | `/console` | 控制台 |
|
||
|
||
### Android 端现有功能(9 个屏幕)
|
||
|
||
| 页面 | 文件 | 状态 |
|
||
|------|------|------|
|
||
| 首页 | HomeScreen.kt | ⚠️ 仅有工具分类网格,缺少Hero、快捷入口、文章、学习路径等 |
|
||
| 课程列表 | CourseListScreen.kt | ⚠️ 基础列表,缺少分类筛选、排序、收藏 |
|
||
| 课程详情 | CourseDetailScreen.kt | ⚠️ 基础详情,缺少进度、收藏 |
|
||
| 章节阅读 | ChapterReaderScreen.kt | ✅ 基础功能完整 |
|
||
| 登录 | LoginScreen.kt | ✅ 完整 |
|
||
| 确认登录 | ConfirmLoginScreen.kt | ✅ 完整 |
|
||
| 扫码登录 | ScanLoginScreen.kt | ✅ 完整 |
|
||
| 个人资料 | ProfileScreen.kt | ⚠️ 基础信息,缺少邮箱/手机/密码设置入口 |
|
||
| 设置 | SettingsScreen.kt | ⚠️ 基础设置,功能较少 |
|
||
| 课程管理 | CourseManageScreen.kt | ⚠️ 占位页面 |
|
||
|
||
---
|
||
|
||
## 二、功能对齐计划
|
||
|
||
### P0: 核心框架与基础功能(优先级最高)
|
||
|
||
#### 1. 完善首页(HomeScreen)
|
||
- [ ] 添加 Hero 区域(标题、副标题)
|
||
- [ ] 添加快捷入口(学习、工具、文章、API)
|
||
- [ ] 添加热门工具展示
|
||
- [ ] 添加入口导航功能
|
||
- [ ] 添加搜索功能跳转
|
||
|
||
#### 2. 完善个人资料(ProfileScreen)
|
||
- [ ] 添加邮箱设置入口
|
||
- [ ] 添加手机号设置入口
|
||
- [ ] 添加修改密码入口
|
||
- [ ] 添加用户等级/积分展示
|
||
|
||
#### 3. 新增消息中心
|
||
- [ ] 创建 MessagesScreen(回复、@我、点赞、系统通知)
|
||
- [ ] 创建 SystemMessageScreen
|
||
- [ ] 添加未读消息计数
|
||
- [ ] 添加消息已读/未读功能
|
||
|
||
#### 4. 新增搜索功能
|
||
- [ ] 创建 SearchScreen
|
||
- [ ] 添加工具、课程、文章搜索
|
||
- [ ] 添加搜索历史
|
||
|
||
#### 5. 新增收藏功能
|
||
- [ ] 创建 FavoritesScreen
|
||
- [ ] 添加工具收藏、课程收藏、文章收藏
|
||
- [ ] 添加收藏取消功能
|
||
|
||
#### 6. 新增历史记录
|
||
- [ ] 创建 HistoryScreen
|
||
- [ ] 添加浏览历史记录
|
||
- [ ] 添加历史清除功能
|
||
|
||
### P1: 内容模块
|
||
|
||
#### 1. 文章系统
|
||
- [ ] 创建 ArticlesScreen(文章列表)
|
||
- [ ] 创建 ArticleDetailScreen(文章详情)
|
||
- [ ] 添加文章分类筛选
|
||
- [ ] 添加文章点赞/评论
|
||
|
||
#### 2. 学习系统增强
|
||
- [ ] 完善 CourseListScreen(分类筛选、排序、收藏)
|
||
- [ ] 完善 CourseDetailScreen(进度显示、收藏)
|
||
- [ ] 创建 CourseLearnScreen(课程学习页)
|
||
|
||
#### 3. 工具集
|
||
- [ ] 创建 UtilityScreen(工具列表)
|
||
- [ ] 添加工具分类筛选
|
||
- [ ] 添加工具搜索
|
||
- [ ] 添加工具收藏
|
||
- [ ] 创建常用工具详情页(计算器、JSON格式化等)
|
||
|
||
### P2: 用户系统与钱包
|
||
|
||
#### 1. 钱包系统
|
||
- [ ] 创建 WalletScreen(积分、金币总览)
|
||
- [ ] 创建 PointsScreen(积分明细)
|
||
- [ ] 创建 CoinsScreen(金币明细)
|
||
- [ ] 创建 RechargeScreen(充值)
|
||
|
||
#### 2. 任务中心
|
||
- [ ] 创建 TaskCenterScreen
|
||
- [ ] 添加每日任务
|
||
- [ ] 添加任务奖励
|
||
|
||
#### 3. Bug反馈
|
||
- [ ] 创建 BugScreen(反馈列表)
|
||
- [ ] 创建 BugDetailScreen(反馈详情)
|
||
- [ ] 添加提交反馈功能
|
||
|
||
### P3: 高级功能
|
||
|
||
#### 1. API目录
|
||
- [ ] 创建 ApiDirectoryScreen
|
||
- [ ] 创建 ApiDetailScreen
|
||
- [ ] 创建 ApiDocsScreen
|
||
|
||
#### 2. 即时聊天
|
||
- [ ] 创建 ChatScreen
|
||
- [ ] 添加消息发送/接收
|
||
|
||
#### 3. 用户主页
|
||
- [ ] 创建 UserHomeScreen
|
||
- [ ] 添加用户动态
|
||
|
||
#### 4. 其他页面
|
||
- [ ] 创建 ChangelogScreen
|
||
- [ ] 创建 ManualScreen
|
||
- [ ] 创建 PrivacyScreen
|
||
- [ ] 创建 UserAgreementScreen
|
||
|
||
---
|
||
|
||
## 三、API 接口需求
|
||
|
||
### 需要新增的 API
|
||
|
||
| API | 端点 | 用途 |
|
||
|-----|------|------|
|
||
| MessageApi | `/api/messages/` | 消息列表 |
|
||
| | `/api/messages/unread_count/` | 未读消息数 |
|
||
| | `/api/messages/mark_read/` | 标记已读 |
|
||
| | `/api/messages/delete/` | 删除消息 |
|
||
| SearchApi | `/api/search/` | 全局搜索 |
|
||
| HistoryApi | `/api/history/` | 历史记录 |
|
||
| FavoritesApi | `/api/favorites/` | 收藏列表 |
|
||
| | `/api/favorites/toggle/` | 收藏/取消收藏 |
|
||
| ArticleApi | `/api/articles/` | 文章列表 |
|
||
| | `/api/articles/{id}/` | 文章详情 |
|
||
| WalletApi | `/api/wallet/` | 钱包信息 |
|
||
| | `/api/wallet/recharge/` | 充值 |
|
||
| TaskApi | `/api/tasks/` | 任务列表 |
|
||
| | `/api/tasks/complete/` | 完成任务 |
|
||
| BugApi | `/api/bugs/` | Bug反馈 |
|
||
| UserApi | `/api/user/{id}/` | 用户主页 |
|
||
|
||
---
|
||
|
||
## 四、实施步骤
|
||
|
||
### 第一阶段:修复编译错误 + 完善基础
|
||
1. 修复现有代码编译错误
|
||
2. 完善 HomeScreen(添加Hero、快捷入口)
|
||
3. 完善 ProfileScreen(添加设置入口)
|
||
4. 更新导航结构
|
||
|
||
### 第二阶段:核心功能
|
||
1. 实现消息中心
|
||
2. 实现搜索功能
|
||
3. 实现收藏功能
|
||
4. 实现历史记录
|
||
|
||
### 第三阶段:内容模块
|
||
1. 实现文章系统
|
||
2. 完善学习系统
|
||
3. 实现工具集
|
||
|
||
### 第四阶段:扩展功能
|
||
1. 实现钱包系统
|
||
2. 实现任务中心
|
||
3. 实现Bug反馈
|
||
4. 实现其他辅助页面
|
||
|
||
---
|
||
|
||
## 五、文件结构规划
|
||
|
||
```
|
||
app/src/main/java/com/chunyu/app/
|
||
├── data/
|
||
│ ├── api/
|
||
│ │ ├── AuthApi.kt (已有)
|
||
│ │ ├── LearnApi.kt (已有)
|
||
│ │ ├── ToolApi.kt (已有)
|
||
│ │ ├── UserApi.kt (已有)
|
||
│ │ ├── MessageApi.kt (新增)
|
||
│ │ ├── SearchApi.kt (新增)
|
||
│ │ ├── HistoryApi.kt (新增)
|
||
│ │ ├── FavoritesApi.kt (新增)
|
||
│ │ ├── ArticleApi.kt (新增)
|
||
│ │ ├── WalletApi.kt (新增)
|
||
│ │ ├── TaskApi.kt (新增)
|
||
│ │ └── BugApi.kt (新增)
|
||
│ └── repository/
|
||
│ ├── AuthRepository.kt (已有)
|
||
│ ├── ToolRepository.kt (已有)
|
||
│ ├── UserRepository.kt (已有)
|
||
│ ├── MessageRepository.kt (新增)
|
||
│ ├── SearchRepository.kt (新增)
|
||
│ ├── HistoryRepository.kt (新增)
|
||
│ ├── FavoritesRepository.kt (新增)
|
||
│ ├── ArticleRepository.kt (新增)
|
||
│ ├── WalletRepository.kt (新增)
|
||
│ ├── TaskRepository.kt (新增)
|
||
│ └── BugRepository.kt (新增)
|
||
├── ui/
|
||
│ └── screens/
|
||
│ ├── home/
|
||
│ │ └── HomeScreen.kt (完善)
|
||
│ ├── learn/
|
||
│ │ ├── CourseListScreen.kt (完善)
|
||
│ │ ├── CourseDetailScreen.kt (完善)
|
||
│ │ ├── CourseLearnScreen.kt (新增)
|
||
│ │ └── ChapterReaderScreen.kt (已有)
|
||
│ ├── tools/
|
||
│ │ ├── UtilityScreen.kt (新增)
|
||
│ │ ├── CalculatorScreen.kt (新增)
|
||
│ │ ├── JsonFormatterScreen.kt (新增)
|
||
│ │ └── ... (其他工具)
|
||
│ ├── articles/
|
||
│ │ ├── ArticlesScreen.kt (新增)
|
||
│ │ └── ArticleDetailScreen.kt (新增)
|
||
│ ├── messages/
|
||
│ │ ├── MessagesScreen.kt (新增)
|
||
│ │ ├── SystemMessageScreen.kt (新增)
|
||
│ │ └── ChatScreen.kt (新增)
|
||
│ ├── profile/
|
||
│ │ ├── ProfileScreen.kt (完善)
|
||
│ │ ├── ProfileEmailScreen.kt (新增)
|
||
│ │ ├── ProfilePhoneScreen.kt (新增)
|
||
│ │ └── ProfileChangePasswordScreen.kt (新增)
|
||
│ ├── wallet/
|
||
│ │ ├── WalletScreen.kt (新增)
|
||
│ │ ├── PointsScreen.kt (新增)
|
||
│ │ ├── CoinsScreen.kt (新增)
|
||
│ │ └── RechargeScreen.kt (新增)
|
||
│ ├── search/
|
||
│ │ └── SearchScreen.kt (新增)
|
||
│ ├── history/
|
||
│ │ └── HistoryScreen.kt (新增)
|
||
│ ├── favorites/
|
||
│ │ └── FavoritesScreen.kt (新增)
|
||
│ ├── task/
|
||
│ │ └── TaskCenterScreen.kt (新增)
|
||
│ ├── bug/
|
||
│ │ ├── BugScreen.kt (新增)
|
||
│ │ └── BugDetailScreen.kt (新增)
|
||
│ ├── settings/
|
||
│ │ └── SettingsScreen.kt (完善)
|
||
│ └── other/
|
||
│ ├── ChangelogScreen.kt (新增)
|
||
│ ├── ManualScreen.kt (新增)
|
||
│ ├── PrivacyScreen.kt (新增)
|
||
│ └── UserAgreementScreen.kt (新增)
|
||
└── navigation/
|
||
└── AppNavHost.kt (更新)
|
||
```
|
||
|
||
---
|
||
|
||
## 六、预期成果
|
||
|
||
完成本计划后,Android 端将:
|
||
1. 覆盖 Web 端 90% 以上的核心功能
|
||
2. 拥有完整的用户系统(资料、钱包、任务)
|
||
3. 拥有完整的内容系统(文章、学习、工具)
|
||
4. 拥有完整的消息系统(通知、聊天)
|
||
5. 拥有完善的历史记录和收藏功能
|
||
6. 提供良好的用户体验和界面一致性
|