ManageDishTeminal 开发前的规划动作

日期:2026-06-22 | 类型:开发前的规划动作 | 项目:智能排菜系统安卓 Pad 客户端

1. 项目启动定位

本项目是安卓 Pad 横屏客户端,核心用于称重台排菜和设置菜谱。当前阶段先进入本地开发和框架搭建,接口文档后续提供,先用空布局和预留封装跑通页面骨架与主流程。

2. 技术框架约定

事项 结论
开发语言 Java
UI 技术 原生 XML + Activity/Fragment
页面组织 多 Activity,尽量还原原型
最低 Android 版本 Android 10
目标 Android 版本 Android 15
本地存储 SharedPreferences + SQLite
图片加载 Glide;菜品图首期可默认占位或隐藏
图标资产 App 图标参考 /Users/liang/AndroidStudioProjects/AIDishRecognition/app/src/main/res/mipmap-hdpi/launcher.png;页面标题栏 Logo 参考 /Users/liang/AndroidStudioProjects/AIDishRecognition/app/src/main/res/drawable/icon_logo.png
网络层 OkHttp + Retrofit,并做项目内统一封装
权限预留 扫码、拍照、相册权限先预留;拍照和相册首期暂不接
字体 跟随系统字体,字号由应用内样式指定

3. 首期页面范围

需要实现

首期暂不做

4. 业务展示规则

5. 交互规则

6. 接口待提供清单

接口材料稍后提供。框架阶段先留统一网络层、Repository、DTO、空布局和错误状态,不要把接口调用散落在页面中。

7. 网络请求框架规划

页面状态

8. 架构层规划

建议分包

基类和通用能力

本地存储

8.1 统一标题栏规划

标题栏需要封装成公共组件,避免多 Activity 分散实现。可参考现有安卓项目里 BaseActivity 统一管理标题栏的方式,但本项目按 ManageDishTeminal 的视觉和交互重新收口。

BaseActivity 建议暴露的方法

8.2 系统设置换肤规划

系统设置页的换肤功能纳入首期规划,但首期只做本地 UI 主题切换,不依赖接口。

首期换肤不要求动态替换所有 drawable,可先通过统一颜色资源、BaseActivity 和公共控件方法收口,避免颜色散落在页面 XML 中。

9. Crash 拦截与日志

10. 行为日志本地记录

行为日志纳入框架层。首期参考现有安卓项目的日志记录方式:调试日志走 LogUtils,业务行为日志封装成事件 JSON,异步写入本地文件;后续如有日志上传接口,再扩展上传。首期不强制把行为日志存 SQLite。

参考项目实现

首期落地方式

记录范围

日志内容格式

参考 UploadLogUtils 的事件 JSON 方式,首期每条行为日志写一行 JSON 字符串,便于后续上传或排查。

字段 说明
time日志时间。
eventType事件类型,按业务模块分组。
eventCode事件码,0 通常表示成功,非 0 表示失败或异常。
eventName事件名称。
eventMsg事件说明,例如“[排菜结果] 称重台01 main 排菜成功”。
page页面。
operator操作人。
targetId目标对象 ID。
targetName目标对象名称。
extra扩展字段 JSON。

首批事件码

11. 空布局文案

12. 仍需确认或提供