状态:已于 2026-08-29 撤销。当前消费接口统一使用基础设置中的 API 地址,详见
2026-08-29-consumption-use-global-api-address.md。
按用户要求,消费模块访问以下接口时临时使用 http://192.168.10.38/:
POST /api/oneCardTerminal/acquireByPlatePOST /api/oneCardTerminal/reportPOST /api/oneCardTerminal/syncPersons用户消息中的 http://192.168.10.38。 末尾为中文句号,不能作为 Retrofit 合法基地址;代码按实际主机规范化为带 / 的 http://192.168.10.38/。
ConsumptionNetworkProvider,集中保存消费模块临时基地址并复用一个独立 NetworkService。ConsumptionActivity 的订单查询和接口 C 前台反馈改用该独立服务。ConsumptionReportSyncWorker 的接口 C 后台补传改用同一独立服务,避免首次反馈与3分钟补传发送到不同服务端。acquireOrderByPlate、reportOneCardDebitResult 和 syncPersons 三个方法,因此消费页后续注入人员同步时使用同一服务即可。ConsumptionActivity 没有实际调用 syncPersons,本次不额外新增人员同步行为,避免超出“修改请求地址”的范围。NetworkManager、设置中的全局 API 地址或其他绑盘、心跳、MQTT、人员同步调用方。CONSUMPTION_NETWORK_CONFIG,内容为当前临时基地址,便于现场确认请求目标。ConsumptionNetworkProvider 中维护,Activity 和 Worker 不复制地址字面量。ConsumptionNetworkProviderTest。ConsumptionNetworkProvider 尚不存在产生3个编译错误,证明测试先锁定临时地址和服务复用行为。定向测试命令:
JAVA_HOME=/Users/liang/Library/Java/JavaVirtualMachines/corretto-1.8.0_482/Contents/Home \
bash gradlew :app:testDebugUnitTest \
--tests 'com.zhct.traybinding.consumption.ConsumptionNetworkProviderTest' \
--no-daemon --console=plain
定向结果:BUILD SUCCESSFUL in 16s。
验证内容:地址带 Retrofit 必需的末尾 /;消费前台和补传调用方复用同一服务实例。
JAVA_HOME=.../corretto-1.8.0_482/Contents/Home bash gradlew :app:testDebugUnitTest :app:assembleDebug --no-daemon --console=plain。BUILD SUCCESSFUL in 46s。git diff --check 通过。app/build/outputs/apk/debug/app-debug.apk,约61 MB。192.168.10.38,否则订单查询和反馈会失败并进入既有提示/补传逻辑。ConsumptionNetworkProvider 及其固定地址契约测试。ConsumptionActivity 的订单查询和前台反馈改回 NetworkManager 全局服务。ConsumptionReportSyncWorker 的后台补传改回同一全局服务。SETTING_API_ADDRESS 控制。