macOS下无法设置文件类型图标问题求助
解决Torrent文件关联后图标不显示的问题
检查图标文件的配置与存在性
- 确认
icon.icns文件已正确添加到应用的**资源目录(Resources)**中,且在Xcode的「Build Phases」→「Copy Bundle Resources」列表里已包含该文件。 - 核对
CFBundleTypeIconFile的值,确保无拼写错误(包括大小写、.icns后缀)。
完善UTI配置(关键修复)
当前配置仅引用了系统现有UTI org.bittorrent.torrent,需显式声明UTI并绑定图标,将以下配置补充到Info.plist中:
<key>UTExportedTypeDeclarations</key> <array> <dict> <key>UTTypeIdentifier</key> <string>org.bittorrent.torrent</string> <key>UTTypeDescription</key> <string>BitTorrent Document</string> <key>UTTypeIconFile</key> <string>icon.icns</string> <key>UTTypeConformsTo</key> <array> <string>public.data</string> <string>public.item</string> </array> <key>UTTypeTagSpecification</key> <dict> <key>public.filename-extension</key> <array> <string>torrent</string> </array> </dict> </dict> </array>
显式声明UTI后,系统能更可靠地关联图标与文件类型。
重置系统缓存
系统缓存可能导致图标不更新,执行以下终端命令:
- 重置Launch Services:
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user - 重启Finder:
killall Finder - 若仍无效,直接重启系统彻底清除缓存。
验证应用签名(发布版应用)
如果是已签名的应用,确认签名未损坏,重新签名:
codesign -f -s "你的签名证书名称" /Applications/你的应用名称.app
内容的提问来源于stack exchange,提问作者Alexander Dyagilev
相关产品推荐
相关产品推荐

