feat(app): 添加环境切换功能并优化基础URL管理

- 在主界面标题时间区域添加点击事件,支持弹出环境切换对话框
- 新增EnvSwitchDialog类实现TEST/UAT/PROD三套环境切换功能
- 新增dialog_env_switch.xml布局文件定义环境切换弹窗UI
- 重构GlobalData类,统一管理基础URL常量并添加持久化支持
- 修改MyApp初始化逻辑,优先读取用户手动设置的环境配置
- 添加SpTool.baseUrl属性用于环境配置的本地存储
- 修复MainActivity布局文件中的TextView垂直内边距问题
- 调整食物识别防抖时间从500ms到3000ms,优化计算营养逻辑执行时机
This commit is contained in:
2026-03-31 09:48:32 +08:00
parent f40c2046f1
commit 91800a6bb1
8 changed files with 216 additions and 13 deletions
@@ -102,7 +102,7 @@ class MainScreenPresentation(
// private var userNutritionData: UserNutritionData? = null
private var userNutrition: UserNutrition? = null
private var dinnerTypeInfo: DinnerType? = null
private val debouncer = Debouncer(500)
private val debouncer = Debouncer(3000)
private var recognitionTime: Long = 0L // 人脸识别时的时间
var recognitionWeight: Int = 0 // 人脸识别时的重量
@@ -771,14 +771,14 @@ class MainScreenPresentation(
if (currentFood == null || userNutrition == null) {
return
}
var weight = value
if (weight < 0) weight = 0
if (activity.settlementMode == 0) {
activity.runOnUiThread {
addFoodToOrder(weight, currentFood!!)
}
}
debouncer.debounce {
var weight = value
if (weight < 0) weight = 0
if (activity.settlementMode == 0) {
activity.runOnUiThread {
addFoodToOrder(weight, currentFood!!)
}
}
Timber.tag(TAG)
.d("calculateNutrition weight = $weight, recognitionWeight = $recognitionWeight")
val dinnerType = dinnerTypeInfo?.dinnerType