macOS 默认浏览器和邮件客户端需通过系统设置、应用内配置及终端命令三步完成,重点确保 http/https 和 mailto 协议正确绑定目标应用的 Bundle ID。

在 macOS 上配置默认浏览器和邮件客户端,核心是让系统知道“遇到网页链接该用谁打开”“遇到邮件链接又该交给谁处理”。只要设置到位,点击邮件里的网址、文档中的超链接、或是网页上的 mailto: 链接,都会自动跳转到你选的应用,不用手动切换。
设置默认浏览器(三种可靠方式)
macOS Ventura 13 及更新系统(包括 Sonoma、Sequoia)已将入口统一整合,但路径略有差异,以下方法均有效:
让 macOS 自动化像说话一样简单 —— 用代码控制你的 Mac,无需学习 AppleScript 系统要求 macOS 14+ (Sonoma) Python 3.9+ 需要开启:辅助功能 + 屏幕录制权限
- 系统设置一键指定:点击左上角苹果菜单 → “系统设置” → 左侧选“桌面与程序坞”(Ventura)或“通用”(Sonoma/Sequoia)→ 找到“默认网页浏览器”,点击右侧当前浏览器名称 → 从列表中选择 Chrome、Firefox、Edge 或 Safari。注意:未启动过的浏览器不会显示,先双击打开一次再回来设置。
- 浏览器内直接设为默认:打开 Chrome / Firefox / Edge → 进入设置(Chrome 点右上角三点 → 设置;Firefox 点右上角三横线 → 设置;Edge 类似)→ 找到“默认浏览器”选项 → 点击“设为默认”。系统会自动跳转至系统设置并高亮授权区域,确认即可。
-
终端命令强制绑定(备用):适用于下拉列表不显示目标浏览器,或批量部署场景。打开“终端”,依次执行:
defaults write com.apple.LaunchServices/com.apple.launchservices.secure LSHandlers -array-add '{\"LSHandlerScheme\"=\"http\";\"LSHandlerRoleAll\"=\"com.google.chrome\";}'
defaults write com.apple.LaunchServices/com.apple.launchservices.secure LSHandlers -array-add '{\"LSHandlerScheme\"=\"https\";\"LSHandlerRoleAll\"=\"com.google.chrome\";}'
再运行 killall Dock 刷新生效。
设置默认邮件客户端(重点解决 mailto 链接失效)
很多用户发现设了 Outlook 或 Spark,但点网页里的“发邮件”链接还是打开 Apple Mail——问题常出在协议绑定未覆盖 mailto:。需按顺序排查:
- 系统级全局指定:苹果菜单 → “系统设置” → “通用” → “默认应用程序” → 找到“邮件”条目 → 点击右侧图标 → 从列表中选择 Outlook、Spark 或 Airmail。要求应用已安装且至少完成一次账户登录(否则可能不出现)。
-
在“邮件”App 中反向指定阅读器:打开自带“邮件”应用 → 顶部菜单栏点“邮件” → “设置” → “通用”标签页 → 在“默认的电子邮件阅读程序”里选目标应用。若没列出,点“选择”手动定位到
/Applications/Spark.app等路径。 - 检查并启用第三方应用自身权限:启动 Outlook 或 Spark → 进入其设置(如 Spark:偏好设置 → 通用 → 勾选“将 Spark 设为默认邮件客户端”;Outlook:设置 → 常规 → 启用“将 Outlook 设为默认邮件和日历应用”)。这步常被忽略,却是协议注册的关键。
验证与常见问题处理
设置完成后,立刻测试效果:
- 在备忘录或信息中粘贴一个网址(如
https://example.com),点击看是否用你选的浏览器打开; - 在 Safari 地址栏输入
mailto:test@example.com回车,看是否唤起 Outlook 或 Spark; - 若仍失败,打开终端运行:defaults read com.apple.LaunchServices/com.apple.launchservices.secure LSHandlers | grep -A 2 -B 2 mailto,确认返回结果中
LSHandlerRoleAll对应的是你目标应用的 Bundle ID(如com.microsoft.outlook); - 终极重置:可运行 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain system -domain user 清空注册表,再重启 Mac 重新设置。

















