1. 取消 “自动更新”
App Store > 偏好设置…,取消勾选 “自动更新”(默认)。
2. 清除更新标记(数字角标)
如果已经检测到更新,App Store 图标上出现红点数字,打开终端执行如下命令可以清除:
1 | defaults write com.apple.appstored.plist BadgeCount 0 |
App Store 左侧的更新条目通知也会清空 (sysin)。
3. 禁用标记 App 图标(禁用数字角标)
系统偏好设置… > 通知与专注模式,通知,选择 “App Store” 取消勾选 “标记 App 图标”(也可以完全关闭该项通知)。
参考:https://developer.apple.com/documentation/devicemanagement/appstore
4. 可选步骤(仅供参考)
上述步骤已经可以禁用更新了,以下内容是非必要的,一般忽略即可。
但是如果检测到了更新以下两处仍然会有提示(非 MAS App 不受影响):
- Apple logo 菜单下的 App Store… 会提示有 “x项更新” (可以重复 “6.2 清除更新标记(数字角标)”)
- 打开 App Store 右侧会提示可更新的 App 列表
禁用全局 App 更新通知
编辑 hosts 文件,添加如下内容:
手动编辑:打开终端,执行命令sudo vi /etc/hosts
,添加以下条目:
1 | 127.0.0.1 gsp64-ssl.ls.apple.com |
备注:以上地址为笔者实际检测地址,因网络环境差异,地址可能有所差异,如果无效请反馈。使用防火墙屏蔽进程可以彻底解决该问题。
或者使用 SwitchHosts(免费软件)。
或者(或同时)使用防火墙软件屏蔽:
例如 Little Snitch,这是一个商业软件。
-
新建规则 1:禁止下载更新相关的数据
Process Name:
/usr/libexec/nsurlsessiond
Deny Outgoing Connections
App Store 更新 App 时可能需要访问以下主机:
以下是 Apple 官方分享的列表,请根据需要屏蔽。
主机 | 端口 | 协议 | OS | 描述 | 支持代理 |
---|---|---|---|---|---|
*.itunes.apple.com | 443、80 | TCP | iOS、Apple tvOS 和 macOS | 商店内容,如 App、图书和音乐 | 是 |
*.apps.apple.com | 443 | TCP | iOS、Apple tvOS 和 macOS | 商店内容,如 App、图书和音乐 | 是 |
*.mzstatic.com | 443 | TCP | iOS、Apple tvOS 和 macOS | 商店内容,如 App、图书和音乐 | — |
itunes.apple.com | 443、80 | TCP | iOS、Apple tvOS 和 macOS | 是 | |
ppq.apple.com | 443 | TCP | iOS、Apple tvOS 和 macOS | 企业 App 验证 | — |
禁用单个 App 更新通知
打开 Finder (访达),浏览到侧边栏 Applications(应用程序),找到不需要更新的 App,点击右键 “显示包内容”,此时出现 Content 文件夹,展开该文件夹,可以看到下面有个 _MASReceipt 文件夹,下面有个 receipt 文件。将 receipt 文件内容清空或者直接将 _MASReceipt 文件夹删除,即可禁用该 App 自动检测 App Store 软件更新(有限支持)。
在终端中执行的示例,这里以微信(Wechat)为例:
- 清空 receipt 文件内容:
echo '' > /Applications/WeChat.app/Contents/_MASReceipt/receipt
- 删除 _MASReceipt 文件夹:
rm -rf /Applications/WeChat.app/Contents/_MASReceipt/
下载仅供下载体验和测试学习,不得商用和正当使用。
下载体验