iOS 可以下载历史版本 app ,需要 app 的历史版本 ID ,macOS 系统的 app 对应的历史版本 ID 该如何查询?
实际例子:
经常使用的 SSH 工具——Termius ,最近更新增加了强制账号登录功能(不登录账号不能用),而且默认将个人账号登录信息同步到云端。
我想继续使用之前的旧版本,如何下载到官方历史版本 Termius ?
在 macOS 系统下下载历史版本 app 的方法有两种:
-
通过外部网站下载历史版本
有一些第三方网站提供历史版本 app 的下载,例如 oldapps.com 和 macupdate.com。你可以在这些网站中搜索需要下载的 app 的历史版本,然后下载并安装即可。 -
使用终端命令查询历史版本 ID
首先需要找到目标 app 的 Bundle ID,可以在 /Applications 目录下找到 app,右键点击选择“显示包内容”,打开 Contents 文件夹,找到 Info.plist 文件,用任何文本编辑器打开,查找 CFBundleIdentifier 字段即可找到 Bundle ID。
然后,在终端中输入以下命令:
/usr/libexec/PlistBuddy -c "Print :CFBundleShortVersionString" /Applications/APP_NAME.app/Contents/Info.plist
将 “APP_NAME” 替换为目标 app 的名称,运行命令后会显示当前安装的 app 版本号。然后再输入以下命令:
/usr/libexec/PlistBuddy -c "Print :$VERSIONS_REFERENCES" /Applications/APP_NAME.app/Contents/Info.plist
将 “APP_NAME” 替换为目标 app 的名称,将 "$VERSIONS_REFERENCES" 替换成上一个命令输出的版本号(注意去掉引号)。运行命令后会显示一个大字符串,里面包含了该 app 所有可用的历史版本 ID。
将该字符串复制,然后在终端中输入以下命令:
/usr/libexec/PlistBuddy -c "Print :$VERSION_ID:CFBundleShortVersionString" /Applications/APP_NAME.app/Contents/Info.plist
将 “APP_NAME” 替换为目标 app 的名称,将 "$VERSION_ID" 替换成前一个命令输出的历史版本 ID(注意去掉引号)。运行命令后会显示该历史版本的版本号。
最后,打开 Mac App Store,搜索目标 app,找到该历史版本,然后点击“获取”按钮,即可下载安装。