ProfileSmith 是一个原生 macOS 描述文件管理器,用来索引、搜索、预览和维护 .mobileprovision、.provisionprofile,以及包含嵌入描述文件的 .ipa、.xcarchive、.app、.appex。
- 扫描
~/Library/MobileDevice/Provisioning Profiles和~/Library/Developer/Xcode/UserData/Provisioning Profiles - SQLite + GRDB 建索引,支持按名称、Bundle ID、Team、UUID、类型全文搜索
- 详情面板展示概要、Entitlements、证书摘要和原始 plist 结构
- 支持导入、导出、Finder 定位、移到废纸篓、彻底删除、文件名美化
- 已声明描述文件文档类型,可在 Finder 中通过“打开方式”使用 ProfileSmith 打开
.mobileprovision/.provisionprofile - 可直接在应用内预览描述文件、IPA、XCArchive、App、App Extension;对于这些文件,推荐使用“打开方式 -> ProfileSmith”或直接拖入应用获得一致预览
- 集成 Sparkle / GitHub Releases 更新检查,并可在偏好设置里配置检查策略
ProfileSmith/: 主应用代码ProfileSmithQuickLookExtensions/: Quick Look 预览扩展ProfileSmithTests/: 单元测试ProfileSmithUITests/: UI 测试scripts/: DMG、GitHub Release、appcast 相关脚本release-notes/: 每个版本的发布说明
要求:
- Xcode 26 或更新版本
- macOS 10.15 及以上
常用命令:
xcodebuild test \
-workspace ProfileSmith.xcworkspace \
-scheme ProfileSmith \
-derivedDataPath /tmp/ProfileSmithDerivedData \
-destination 'platform=macOS' \
-only-testing:ProfileSmithTests \
CODE_SIGNING_ALLOWED=NO主工程使用本地依赖:
Vendor/GRDB.swiftVendor/SnapKitVendor/Sparkle
- 启动后左侧会自动显示已索引的描述文件。
- 选中单个条目后,右侧可以查看概要、原始结构和内建预览。
- 拖入
.mobileprovision/.provisionprofile会执行导入。 - 拖入
.ipa/.xcarchive/.app/.appex会打开预览窗口。 - 通过“偏好设置…”可以切换更新策略:手动检查、每天自动检查、启动时检查。
- 在 Finder 中右键描述文件,选择“打开方式 -> ProfileSmith”可以直接进入应用内预览或管理。
版本号来自:
- 主应用:
ProfileSmith.xcodeproj/project.pbxproj - Quick Look 扩展:
ProfileSmithQuickLookExtensions/ProfileSmithQuickLookExtensions.xcodeproj/project.pbxproj
常用脚本:
./scripts/build_dmg.sh./scripts/publish_github_release.sh./scripts/generate_appcast.sh
典型流程:
- 更新
MARKETING_VERSION/CURRENT_PROJECT_VERSION - 编写
release-notes/vX.Y.md - 构建并签名 DMG
- 发布 GitHub Release
- 生成并提交
appcast.xml
- 移除 Finder Quick Look thumbnail 扩展,避免系统继续使用错误缩略图样式。
- 修复从 Finder 通过“打开方式 -> ProfileSmith”打开描述文件时,应用只切换菜单栏但主窗口未真正前置的问题。
- 调整文案,明确稳定预览路径为“打开方式 -> ProfileSmith”或直接拖入应用。
- 新增运行时多语言切换,主界面、独立预览窗口和偏好设置支持即时刷新。
- 新增浅色、深色与跟随系统外观切换,并修复主界面、预览窗口、偏好设置等区域的背景色同步问题。
- 修复双击列表表头会误打开预览窗口的问题,并修复“状态”剩余天数不会随刷新重新计算的问题。
- 修复独立预览窗口首次打开时内容区高度异常的问题,并补强相关回归测试。
- 优化 Finder“打开方式 -> ProfileSmith”处理逻辑:已存在文件直接定位,未导入文件自动导入并在左侧列表中选中。
- 修复右侧预览页右键菜单仍会出现 Reload 且可能导致内容空白的问题。
- 新增“平台”列,修复表头再次点击无法反向排序、状态列表头异常和最右侧多余分隔线。
- 调整 split view 左侧最小宽度与“名称”列最小宽度一致,并修复外部文件拉起应用时主窗口不会切到前台的问题。
- 修复右侧详情 pane 在启动阶段可能触发的 Auto Layout 冲突日志
- 修复 split view 稳定逻辑在布局过程中重复触发布局,消除控制台递归布局警告
- 应用内预览改为原生 AppKit 视图,不再依赖 HTML / WKWebView
- README 新增最新主界面与预览窗口截图
- 修复美化文件名后描述文件可能消失的问题
- 新增 Finder 中对
.mobileprovision/.provisionprofile的“打开方式 -> ProfileSmith” - 增加主界面与预览窗口的复制快捷键与右键拷贝
- 优化主界面加载态、右侧预览页布局与暗色主题适配
- 修复主列表列宽拖拽与顶部刷新指示器状态异常



