轻量原生 macOS 菜单栏网速工具,使用 Swift + AppKit,无第三方依赖。
打开 dist/NetSpeed-1.4.3-arm64.dmg,将 NetSpeed.app 拖入 Applications,然后从“应用程序”启动。
仅包含 arm64,支持 Apple Silicon Mac,macOS 12 及以上;安装运行不需要 Xcode。
安装包使用本机临时签名,未使用 Developer ID 签名或 Apple 公证。如果通过网络传输后 macOS 阻止打开,可在“系统设置 → 隐私与安全性”中允许打开。
- 菜单栏上下两行:上行为 ↑ 上传,下行为 ↓ 下载,文字和箭头均为白色,常规字重,单位简写为 K/s、M/s;状态栏固定占宽约 45 pt(按最宽三位有效数字和单位预先计算),固定 8 pt 字号、最多三位有效数字;箭头和单位位置固定,数值右对齐,超过显示范围自动切换单位,不再缩放字号。
- 点击菜单栏打开 320×382 的紧凑白色面板,显示总速度、应用图标、应用 / 进程名称、上传与下载速度。
- 应用使用蓝色双箭头图标;辅助进程从可执行文件路径解析所属应用,系统扩展匹配宿主应用。无所属应用的守护进程显示通用终端图标。
- 浅灰色条表示该进程在当前排序指标下相对于列表最大速度的比例。
- 点击“上传”或“下载”按对应速度降序排列,再次点击同一列切换升序。排序偏好会保存。
- 对全部活跃进程排序,列表可滚动,不再预先截取总流量前 6 项。
- 菜单栏每秒刷新;面板打开时每 2 秒采样进程流量。首次打开需要两次采样才能得到速度。
- 面板底部提供“开机自启”开关(登录当前账户后启动)和退出按钮。macOS 13+ 使用系统登录项服务,若需要批准会显示“前往允许”;macOS 12 使用当前用户的 LaunchAgent。开关读取实际配置,默认不主动开启。
需要 Xcode Command Line Tools(xcode-select --install)。
./scripts/build-dmg-v1.4.3.sh输出 dist/NetSpeed.app 和 dist/NetSpeed-1.4.3-arm64.dmg。明确使用 arm64-apple-macosx12.0,不构建 x86_64。
./scripts/test-v1.4.3.sh验证 nettop 解析、完整列表排序、并列顺序、排序按钮切换及保存、菜单栏紧凑宽度和实际辅助进程图标解析,并生成使用模拟数据的 UI 预览到 .build/panel-preview.png 和 .build/status-preview.png。
总速度读取 getifaddrs 中 en* / utun* 接口计数,进程速度使用系统 /usr/bin/nettop 的相邻采样差值。使用 VPN 时接口统计可能包含物理接口与隧道的重复流量;应用列表按进程显示,不合并同一应用的辅助进程。
MIT,见 LICENSE。