为什么 Mac 上没有“全部更新”按钮
App Store 的“更新”页面只了解你从 App Store 获取的应用。其他每个应用都以各自的方式更新,通常是一条 Check for Updates… 命令,以及只有在你打开它时才会看到的提示。用 Homebrew 安装的应用要用 Homebrew 更新。一个你很少打开的应用,可能好几个月都停留在旧版本上。
这对安全尤为重要。浏览器、媒体播放器和邮件应用会定期发布安全漏洞的修复,而修复只有在安装之后才能保护你。
一个列表,三个来源
按下 Check for Updates,Tidy My Mac 就会向每个应用自己的更新来源询问其最新版本:
| 来源 | 检查方式 | 更新方式 |
|---|---|---|
| App Store | Apple 公开的 App Store 查询,适用于带有 App Store 收据的应用 | App Store 会打开该应用的页面,在那里点 Update 即可安装 |
| Homebrew | 你 Mac 上的 Homebrew 目录,适用于以 cask 方式安装的应用 | Update 会为该应用运行 brew upgrade --cask |
| Developer | 应用自身声明的更新源,与它自带的更新程序读取的是同一个 | Open App 会打开该应用,然后通过其 Check for Updates… 安装由其开发者签名的更新 |
结果会分为 Security Fixes、Updates Available、Up to Date 和 Can't Check。每个更新都会显示已安装版本和新版本,如果开发者的更新源提供了,还会有一个 Release Notes 链接。Tidy My Mac 自己不会下载或安装应用更新:由 App Store、Homebrew 或应用自带的更新程序像往常一样完成。
存在已知安全漏洞的 Mac 应用
更新不一定只是新功能。Tidy My Mac 会把你的应用与一份已发布安全修复的应用列表进行比较:针对每个应用,列出厂商的安全公告以及每个发布分支中修复这些问题的第一个版本。该列表汇编自各厂商自己的安全公告,例如 Mozilla 针对 Firefox 和 Thunderbird 的公告、Google 的 Chrome 发布说明、VideoLAN 针对 VLC 的公告,以及 Visual Studio Code、KeePassXC、Zed 和 Joplin 等开源应用的 GitHub 安全公告,并由我们的服务器每六小时重新生成一次。
你 Mac 上缺少修复的应用会排到最前面,归入 Security Fixes,无论其更新来源怎么说。它的那一行会显示最严重的级别(低、中、高或严重)、修复该问题的版本、该漏洞是否已知正在被实际利用,以及指向厂商安全公告的链接。发布分支会得到尊重:已经包含其所在分支修复的长期支持版本,不会仅仅因为存在更新的主版本就被标记。
该列表带有签名,应用在使用前会校验签名,并拒绝比已有版本更旧的副本,因此被篡改或重放的列表会被忽略。它最多每天下载一次并保存在你的 Mac 上,所以检查在离线时也能进行。同一份列表也为 Security Settings 中的存在漏洞应用检查提供数据。
版本比较方式与应用自带的更新程序一致
像 2.1 对比 2.1.0,或 1.5 对比 1.5b3 这样的版本号,很容易比错。Tidy My Mac 按 Sparkle(大多数 Mac 应用使用的更新程序)的方式对版本排序,因此与应用自己会提供的更新保持一致。对于开发者的更新源,它只统计这台 Mac 实际能获取的版本:不含 beta 或 nightly 通道,不含面向其他系统的构建,也不含在 Intel Mac 上的 Apple 芯片构建,还不含需要比你更新的 macOS 的版本。更新源只会通过 HTTPS 获取。
如果某个应用不是来自 App Store 或 Homebrew,也没有发布更新源,它会连同原因一起列在 Can't Check 下,而不是显示为已是最新。
检查会发送什么
Updates 是唯一会就你的应用向互联网查询的板块,所以它发送的内容尽可能少。App Store 应用:它们的 bundle ID 和你所在的地区会发送给 Apple 的查询服务。Developer 应用:会获取各应用自己的更新源,就像它自带的更新程序那样。Homebrew 应用:什么都不发送,答案来自你的 Mac。安全列表从 tidymymac.com 下载,并在你的 Mac 上进行比较。不会发送任何账户、Mac 或用户标识符,你的应用列表也绝不会发送给我们。详情请见隐私政策。
无需打开板块即可检查
Smart Scan 包含一次更新检查,侧边栏会显示有多少个更新在等待。你也可以在 Settings › Scheduled Scans 中开启每周一次的 App update check。它在 Tidy My Mac 打开期间运行,并在有内容需要更新时发送通知,其中会特别标出安全更新。
关于Updates的常见问题
它会把每个更新交给应该安装它的工具。App Store 应用会在 App Store 中打开,可自行更新的应用会被打开,以便它们自己的更新程序安装由其开发者签名的版本,而 Homebrew 应用会在你按下 Update 时用 brew upgrade 更新。Tidy My Mac 自己绝不会下载应用更新。
厂商发布了我们能够可靠读取的安全公告的应用,包括 Firefox、Thunderbird、Google Chrome、VLC、Visual Studio Code、KeePassXC、Zed 和 Joplin。列出的每条公告都链接到厂商自己的页面。任何应用,无论是否在列表中,仍然会进行常规的更新检查。
它不是来自 App Store 或 Homebrew,也没有声明更新源,或者它的来源没有响应。原因会显示在该行上。对于这些应用,请使用应用自带的“检查更新”命令。
不会,macOS 更新来自“系统设置”。是否开启自动安全更新,是 Security Settings 中的检查项之一。