Project / QZXY Hotwater

趣智校园第三方热水控制项目

在手机里完成账号登录、扫码绑定、账单查询与热水控制,同时保留可复现的桌面调试工具。

趣智校园热水应用图标
2.0.0 当前版本
Android 8.0+ Kotlin 原生客户端
HarmonyOS NEXT ArkTS 原生客户端
86 / 43 双端单元测试

项目定位

项目将趣智校园热水的日常操作整理为 Android、HarmonyOS NEXT 和 Python 三套实现。移动端面向直接使用,桌面脚本用于抓包解析、接口验证和调试。

v2.0.0 之后,移动端首次配置不再要求用户专门抓包。登录趣智校园账号后,应用会回填所需账号字段,再通过热水器二维码绑定设备。

主要能力

  • 在“用水 / 账单 / 配置”三个主视图之间切换
  • 查询余额、设备状态与历史账单,执行开关热水
  • 低余额时跳转支付宝内的趣智校园充值页面
  • 登录、扫码绑定、配置备份与应用内更新

从账号到用水

移动端把关键配置流程收进应用内,登录和绑定均可跳过,之后也能从配置页继续完成。

登录账号

回填接口参数

使用趣智校园账号登录,自动保存热水接口所需字段。密码只参与当前请求,不会写入本地配置。

扫码绑定

识别设备二维码

通过 CameraX、ML Kit 或 Scan Kit 实时识别二维码,也可以在相机不可用时手动填写设备码。

开始用水

查询并控制热水

刷新余额和设备状态,执行开水、关水,并处理活动订单与服务端状态回写。

账单维护

保留历史与配置

查看账单和操作记录,通过跨端兼容的 JSON 文件备份或恢复配置。

Native Clients

两套原生客户端

Android

Kotlin 与 Jetpack Compose

最低支持 Android 8.0,提供 2x2 与 4x2 桌面小组件、快捷设置磁贴、前台通知控制和加密配置存储。

Material 3 CameraX ML Kit

HarmonyOS NEXT

ArkTS 与 ArkUI

面向 HarmonyOS SDK 6.1,提供服务卡片、Scan Kit 实时扫码、深色模式、操作历史和应用内检查更新。

Network Kit Scan Kit 服务卡片

桌面调试工具

qzxy_hotwater.py 可以从 Charles 导出的 .chls 文件中提取配置,并提供 extractcheckstatusopenclose 命令。

三个批处理入口可直接检查状态、开热水和关热水,适合验证接口行为或排查移动端配置问题。

账号与配置边界

  • 密码仅用于当前登录请求,不写入应用配置
  • 同账号重新登录保留设备码,切换账号时清理旧设备信息
  • JSON 备份包含登录字段与设备信息,仅应保存在自己的设备上
  • .chls、签名材料和本地配置均不应公开分享

发布与验证

仓库已标记 v2.0.0。Android APK 可从 Gitee Release 下载,HarmonyOS 客户端从该版本起需要拉取源码后自行签名构建。

Android

Debug 与 Release 单元测试均为 86/86 通过,Release APK 已完成构建,并保持应用 ID 与既有签名兼容。

HarmonyOS NEXT

单元测试 43/43 通过,Release HAP 已在本地构建验证。公开 Release 当前不提供 HAP 安装包。