利益相关声明:作者与文中产品有直接的利益相关(开发者、自家产品等)

macOS 自带的航拍壁纸有个挺奇怪的地方。

Apple 给太浩湖(Tahoe)、红杉国家公园(Sequoia)、金门海峡(Golden Gate)等地方拍了好几个时段的版本。比如 macOS 27 新增的金门海峡,就有白天、日落、傍晚和夜晚四段视频。

但在系统设置里,它们是四张独立的壁纸。你选了日落,第二天早上打开电脑,看到的还是日落。

我觉得有点可惜。既然 Apple 已经把同一个地方从早到晚拍了一遍,为什么不能让它们跟着时间自动切换?

于是就有了 Aerial Switcher,一个简洁的菜单栏小工具,让 macOS 航拍壁纸按时间切换。

金门海峡的白天、日落、傍晚和夜晚

从早晨到夜晚

第一次打开 Aerial Switcher,会出现一个设置窗口。选好喜欢的地点,应用就会自动检查并下载缺少的航拍视频,然后切换到当前时间对应的版本。

默认的时间安排是早晨 06:00、白天 12:00、日落 17:00、傍晚 18:00、夜晚 21:00。不同地点的视频数量不一样,比如 Sequoia 只有早晨、白天和夜晚。

当然,这些时间不一定符合你的心意。所以我做了一条 24 小时的时间轴,可以直接拖动上面的把手调整切换时间,每次移动 15 分钟。

比如冬天天黑得早,就可以把日落提前到 16:30。

设置完成后就不用管它了。应用会待在菜单栏里,图标显示当前时段,点开可以看到下一次切换的时间,也可以换一组壁纸。

如果某一段风景特别好看,可以暂停,让它一直停在这里。不想继续使用的话,关掉自动切换就会恢复原来的壁纸。

Mac 开机、登录或从睡眠中唤醒时,应用也会检查一遍时间,避免错过切换。

macOS 的壁纸原来是这么工作的

这个工具最早只是一个需要通过 make 调用的命令行程序,后来慢慢做成现在的菜单栏 App。

实现过程中,我发现 macOS 并没有提供直接设置航拍壁纸的公开 API。不过系统的壁纸配置其实保存在一个 plist 文件里:

~/Library/Application Support/com.apple.wallpaper/Store/Index.plist

修改其中的配置,再重启 WallpaperAgent,就能让系统加载另一段航拍视频。

还有个小坑:航拍视频不一定已经下载到本机。如果直接切换到一段不存在的视频,macOS 并不会自动下载它,而是显示默认壁纸。

所以我又加上了自动下载功能。应用会从 Apple 的服务器获取缺少的视频,存放到 macOS 原本的航拍目录中。每段视频可能有几百 MB,第一次选择壁纸组时需要稍等一会儿。

为了避免影响原来的桌面设置,应用在接管壁纸之前会备份配置,关闭切换时再恢复。如果你期间自己换过壁纸,也会保留你的修改。

不过这些方法都依赖 macOS 没有公开文档的内部机制,将来的系统更新可能让它失效。目前已经在 macOS 26、27 大小版本上测试过兼容性。

下载

Aerial Switcher 已经放到了 GitHub 上,免费开源,使用 MIT 许可证。

GitHub:https://github.com/YnNJU/aerial-switcher

可以在仓库的 Releases 页面下载,解压后拖进「应用程序」文件夹即可。整个 App 大约 2 MB。

目前还没有经过 Apple 公证,所以第一次打开可能会被 macOS 拦截。需要进入「系统设置 › 隐私与安全性」,滚动到底部,选择「仍要打开」。

这是我第一次把自己做的 macOS 小工具完整地打包、发布出来。功能不多,界面也还有不少可以改进的地方,但总算从最初的命令行程序变成了一个可以直接安装使用的 App。

有问题欢迎在 GitHub 提 Issue,也欢迎在评论区交流。