Skip to content

更新日志

v1.7.1

新功能

  • 新增自定义本地扫描目录:「Mac 本地应用」标题栏新增「+」按钮,可添加额外的本地应用扫描目录。适用于 JetBrains Toolbox、Steam 等将应用安装在非 /Applications 目录的工具。添加的目录会持久保存,并自动监控文件变化(#48)。
  • 新增 Stub Portal 版本自动同步:外置硬盘上的应用通过 App Store 更新后,本地 Stub Portal 的版本信息会自动同步更新,并刷新 macOS Launch Services 缓存,「打开方式」菜单不再显示旧版本号(#50)。

改进

  • 应用扫描性能优化:每个应用的 Info.plist 读取次数从 7 次降低到 1 次(通过内存缓存),整体扫描速度显著提升。
  • 扫描超时保护:codesign 子进程新增 10 秒超时,避免大型应用签名检查卡死导致扫描挂起。
  • 目录体积计算安全上限:递归计算应用体积时新增 50 万文件数量上限,防止 Electron 等超大应用包无限遍历。
  • 扫描过程可追踪:扫描循环新增逐应用 TRACE 日志,便于定位扫描卡在哪个应用。
  • 数据目录扫描精准匹配:修复 bundle ID 后缀提取逻辑,过滤 app、com、org 等通用词汇,避免误匹配系统容器目录导致扫描变慢。

修复

  • 修复 Trae 等应用扫描极慢的问题 — bundle ID 中的通用后缀 app 导致 ~/Library/Containers/ 下大量不相关目录被误扫描。
  • 修复外置硬盘应用通过 App Store 更新后,本地 Stub Portal 版本信息不更新、「打开方式」菜单显示旧版本的问题。
  • 修复点击刷新按钮不会触发 Stub Portal 版本同步的问题。

v1.7.0

新功能

  • 新增「待迁出」状态:当本地真实应用版本高于外部存储中的同名应用时,AppPorts 会标记为「待迁出」,提示可将本地新版迁移到外部存储并替换旧副本。
  • 新增数据迁移重签名确认:迁移应用容器内数据前,可选择是否在迁移完成后自动对关联应用执行 Ad-hoc 重签名,以降低容器数据迁移后应用无法识别数据、提示异常或启动异常的风险(#44)。

界面改进

  • 顶部工具栏重排:应用页和数据目录页切换按钮改为更紧凑的图标 + 文本样式,减少空间占用。
  • 数据目录页操作栏优化:「工具目录 / 应用数据」切换、迁移后重签名开关、恢复原始签名按钮和刷新按钮统一放入顶部工具栏。
  • 应用状态徽章新增「待迁出」,方便识别本地版本高于外部旧副本、可以迁出替换的应用。
  • 数据目录迁移重签名确认弹窗完成本地化,标题、正文和按钮会跟随当前语言显示。

改进

  • 应用迁移安全策略增强:外部目标已存在时,仅在目标被识别为 AppPorts 管理的旧入口、旧迁移残留,或当前应用处于「待迁出」状态时,才会自动清理并继续迁移。
  • 数据目录恢复校验增强:不再使用目录大小接近作为自动恢复依据,必须完整匹配 AppPorts metadata 后才会自动接回或恢复。
  • 应用数据扫描更稳定:快速切换应用时,旧扫描任务结果不会覆盖当前选中应用的数据目录列表。
  • 管理员命令和 AppleScript 转义增强:路径包含引号、反斜杠、空格或中文时,Finder 删除和管理员修复权限命令会更安全地处理。
  • 本地化完善:修复切换语言后部分帮助内容、提示弹窗和数据迁移确认内容仍显示中文或翻译不完整的问题,并补齐所有支持语言的相关翻译(#43)。

修复

  • 修复数据目录迁移可能将外部真实目录误判为可恢复目标的问题。
  • 修复应用迁移时可能错误删除外部同名真实应用的问题。
  • 修复外部旧 AppPorts portal / 旧迁移残留无法被稳定识别和清理的问题。
  • 修复路径包含特殊字符时 AppleScript 或管理员命令可能构造错误的问题。
  • 修复应用数据迁移流程中,后台迁移或迁移后重签名可能读取到已切换应用的问题。
  • 修复「待迁出」状态未在应用列表中显示状态徽章的问题。

v1.6.2

  • 新增:开机自动重签名功能。每次用户登录时,自动对签名已失效的已迁移应用执行 Ad-hoc 重签名,无需手动操作。默认开启,可在设置中关闭。
  • 改进:Stub Portal 改用原生 Mach-O 二进制启动器替代旧版 bash 脚本,修复通过 Finder 双击关联文档无法打开外部应用的问题(#42)。
  • 改进:优化关于页布局,内容区域改为可滚动布局,解决窗口尺寸不足时内容被截断的问题。
  • 修复:原生 Stub Portal 被误识别为普通本地应用的问题。
  • 修复:迁回本地时无法正确清理原生 Stub Portal 的问题。
  • 修复:链接回本地时应用壳被当作完整应用处理的逻辑漏洞。
  • 修复:AutoResignInstaller 安装失败时静默成功的问题。

v1.6.1

  • 修复:数据目录迁移后的自动重签名现在会正确签名外部真实应用,而非本地壳(Stub Portal)。
  • 修复:重签名和签名恢复操作现在会正确解析已链接应用的真实路径。
  • 修复:已链接应用的「已重签名」状态检测现在能正确识别外部真实应用的签名状态。
  • 优化:日志输出增加结构化错误码和关联路径信息。

v1.6.0

  • 迁移后的应用不再显示快捷方式箭头角标。
  • 自动更新应用迁移后,不再因更新破坏外部副本。
  • 新增应用签名管理功能,解决迁移后出现「已损坏」提示的问题。
  • 外部存储拔出后,应用列表会以红色状态提示「孤立链接」。
  • macOS 15.1+ 用户可直接将 App Store 应用安装到外部存储。
  • 数据目录迁移更安全:防止误迁移系统目录,中断后可自动恢复。
  • 扫描和大小计算更快,列表不再反复跳动。
  • 复制文件到外部存储更稳定,不再因中断报错。
  • 应用状态标签重新设计,信息更丰富,点击可查看详情。
  • 应用列表刷新后不再丢失选中状态,数据目录支持树形展示。
  • 优化界面细节,包括搜索、排序、分组卡片和图标加载等。
  • 新增火星文语言选项。
  • 更新自动化测试。

v1.5.5

  • 支持 macOS 12 及以上的操作系统
  • 新增火星文语言

v1.5.0

  • 新增 macOS 15.1+ App Store 应用外置安装支持
  • 新增自动重签名功能(数据目录迁移后自动执行)
  • 新增 LocalizationAuditTests 本地化审计测试
  • 改进 Stub Portal 的 Info.plist 生成逻辑
  • 修复部分应用迁移后 Launchpad 图标丢失的问题

v1.4.0

  • 新增数据目录树形视图
  • 新增工具目录识别(30+ 种开发工具)
  • 新增诊断包导出功能
  • 改进自更新检测(Chrome、Edge 等自定义更新器)
  • 修复迁移中断后的自动恢复机制

v1.3.0

  • 新增数据目录迁移功能
  • 新增代码签名管理(备份/恢复原始签名)
  • 新增 Sparkle 和 Electron 应用自动检测
  • 改进锁定迁移保护(chflags uchg
  • 修复 Finder 中角标显示问题

v1.2.0

  • 新增 Stub Portal 迁移策略(替代 Deep Contents Wrapper)
  • 新增 iOS 应用迁移支持(Mac 版 iOS 应用)
  • 改进批量迁移性能
  • 修复部分应用还原后无法启动的问题

v1.1.0

  • 新增多语言支持(20+ 种语言)
  • 新增应用套件目录迁移(如 Microsoft Office)
  • 改进外部存储离线检测
  • 修复 Deep Contents Wrapper 策略的符号链接穿透问题

v1.0.0

  • 首个正式版本
  • 支持应用迁移至外部存储(Deep Contents Wrapper / Whole App Symlink)
  • 支持应用还原和链接管理
  • 支持 FolderMonitor 实时监控文件系统变化
最近更新