Skip to content

feat(tray): 增加自动重连选项#15

Merged
ByteColtX merged 1 commit into
mainfrom
codex/issue-14-auto-reconnect
May 21, 2026
Merged

feat(tray): 增加自动重连选项#15
ByteColtX merged 1 commit into
mainfrom
codex/issue-14-auto-reconnect

Conversation

@ByteColtX
Copy link
Copy Markdown
Owner

@ByteColtX ByteColtX commented May 16, 2026

概述

本 PR 为托盘模式增加用户可控的自动重连能力。开启后,串流连接异常断开时不会进入最终失败状态,而是持续尝试恢复到原先选中的播放目标。

主要改动

  • 新增 auto_reconnect 配置项,默认关闭,并支持配置文件持久化。
  • Windows 托盘菜单新增 自动重连 / Auto Reconnect 可勾选选项。
  • 开启自动重连时先启用 Windows 开机自启;如果开机自启启用失败,则返回错误且不保存自动重连状态,避免配置与实际行为不一致。
  • 托盘状态机新增 Reconnecting 状态,断线后按有上限的退避策略持续重试:0s / 2s / 5s / 10s / 30s / 60s
  • 重连成功后恢复串流状态;用户点击停止串流或退出时会取消后续重连。
  • 增加配置读写、开机自启失败回滚、重连状态流转、退避策略和托盘快照相关测试。

验证

  • cargo fmt --all -- --check
  • cargo clippy --all-targets -- -D warnings
  • cargo test --all-targets

说明

  • 本地额外尝试过 cargo check --target x86_64-pc-windows-msvc,但当前环境在现有 build.rs 嵌入 Windows 图标时缺少资源工具,报错为 failed to embed Windows icon: No such file or directory,因此该检查未进入代码编译阶段。

关联 Issue:Closes #14

@ByteColtX ByteColtX changed the title feat(tray): add auto reconnect feat(tray): 增加自动重连选项 May 16, 2026
@ByteColtX ByteColtX merged commit 614588b into main May 21, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(tray): 增加自动重连选项并联动开机自启

1 participant