Skip to content

CandyMonitor 1.0.20

Choose a tag to compare

@ShawnRn ShawnRn released this 16 Sep 00:28
· 7 commits to main since this release

新增特性 & 深度重构 (v1.0.20)

🎮 ADB 智能绑定重构与原生 PD 掌机/PC 防误绑自愈

  • 真实充电状态排他原则:自动绑定候选设备严格校验 isOnline && isCharging,放电中(!isCharging)的 Android 手机绝不参与任何物理充电口的自动绑定。
  • 原生 USB-PD 电池遥测排他:针对 ASUS ROG Ally、Steam Deck、联想拯救者掌机、Switch 及主流笔记本电脑等设备,通过小电拼 USB-PD 协议原生读取底层电池数据,严禁此类端口误绑定 ADB。
  • 物理冲突实时自愈(Auto-Healing):端口大功率供电($\ge 1.5\text{W}$)但绑定的 ADB 设备处于放电中,或端口已具备原生 PD 电池数据时,系统立即自动解除误绑。
  • 会话历史清洗自愈:误绑解除后同步清洗活跃会话的 boundAndroidSerial,并将此前被污染的设备名称自动恢复为标准充电桩/PD 设备名。
  • 会话级手动解绑防回潮黑名单:用户点击【解除绑定】后记入防回潮黑名单,物理拔线前彻底锁定,杜绝下一秒轮询再次误绑回潮。

⚡️ ADB 版本在线更新检测与一键全自动升级

  • 官方渠道版本比对:自动异步查询 Homebrew Cask 官方元数据并展示官方发布日志链接,支持语义化版本检测。
  • 一键自动化更新:在「无线调试」环境检测卡片中一键触发终端自动运行 Homebrew 升级,无需手动复制粘贴命令。
  • 智能优选最高版本:扫描系统环境变量、Android SDK、Homebrew 等多处路径并按版本降序排列,默认智能选取最高版本(如 37.0.1),支持即时服务平滑热切换。

📱 无线 ADB 设备管理与独立电量/电池监控

  • ADB 独立电池监控(解耦端口模式):支持脱离具体物理充电端口,仅记录 Android 设备的电量、电压与温度变化曲线,满足移动场景、无线充电及纯放电续航评测需求。
  • iPhone 端口彻底物理级解耦:检测到 Apple 设备时直接通过小电拼原生 PD 报文读取电池状态,与 Android ADB 彻底物理隔离,保护设备隐私与数据纯净度。

📊 专业级充电性能分析(ChargerLAB 风格)

  • 100% (UI) 与实际充满(涓流结束)时间精准区分:
    • 严格区分“手机 UI 显示 100%”与“涓流充电彻底截止”两个核心时间节点;
    • 引入智能涓流截止算法:在 100% 之后持续监测功率,首次跌破 <= 0.8W 稳定底噪(或接收到系统 battery_full 广播)时判定为实际充满;
    • 实时交互:当达到 100% 但仍有充入电流时,卡片高亮呈现“涓流中...”,让充电进程一目了然。
  • 动态起充电量自适应里程碑:
    • 自动读取真实起充电量(如 28% -> 50%、28% -> 80%、28% -> 100% (UI)),告别固定从 0% 开始的生硬展示;
    • 具备起充防倒灌保护与阶段功率边界校验。

🚀 极速平滑与长时记录性能飞跃

  • 双向 EMA 零相位滤波算法:彻底消除 Android 系统 1% 整数跳变带来的阶梯状粗糙锯齿,图表输出如丝般平滑顺畅,悬停游标保持原始保真读数。
  • 智能时间桶降采样:将 Swift Charts 绘制点数约束在 260 点以内,GPU/CPU 渲染负担瞬降 90% 以上。
  • 纯值驱动与 Equatable 缓存优化:500+ 条历史记录列表滚动彻底告别卡死,滑动帧率恢复至极致流畅的 120Hz ProMotion。
  • 节流持久化与空载样本保护:SwiftData 落盘节流至 5~15 秒一次,消除通知风暴;修复独立记录结束时的 0W 误剪裁问题。