OSX 自定义扩展图标关联
Posted
技术标签:
【中文标题】OSX 自定义扩展图标关联【英文标题】:OSX Custom extension icon Association 【发布时间】:2010-07-25 00:44:43 【问题描述】:我正在尝试使用以下代码让我的应用程序显示自定义文件扩展名的图标:
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>My Custom Extension</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>LSItemContentTypes</key>
<array>
<string>com.myapp.myext</string>
</array>
<key>LSHandlerRank</key>
<string>Owner</string>
<key>NSExportableTypes</key>
<array>
<string>com.myapp.myext</string>
</array>
</dict>
</array>
<key>UTExportedTypeDeclarations</key>
<array>
<dict>
<key>UTTypeIconFile</key>
<string>Myicon.icns</string>
<key>UTTypeDescription</key>
<string>My Custom Extension</string>
<key>UTTypeConformsTo</key>
<array>
<string>public.data</string>
</array>
<key>UTTypeIdentifier</key>
<string>com.myapp.myext</string>
<key>UTTypeReferenceURL</key>
<string>http://www.myapp.com</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>myext</string>
</array>
</dict>
</dict>
</array>
我已尝试同时使用 UTTypeIconFile 和 CFBundleTypeIconFile,该图标出现在应用程序包内的 Content/Resources 文件夹下,但我仍然看到一个空白图标查看具有我的文件扩展名的文件时
我不确定这是否重要,但这个应用程序是使用 JavaApplicationStub 启动的(它是一个 java 应用程序)
任何帮助将不胜感激:)
【问题讨论】:
Apple 可能没有将 Java 应用程序注册为文档类型的系统默认处理程序。 【参考方案1】:我通过使用 just JavaApplicationStub 了解了一些问题。您是否尝试使用 Apple 的 Jar Bundler 构建 .app
?你应该可以Registering the File Types Your App Supports。
【讨论】:
以上是关于OSX 自定义扩展图标关联的主要内容,如果未能解决你的问题,请参考以下文章
Android ToolBar自定义图标,关联DrawerLayout
如何在 Visual Studio 中将自定义图标添加到解决方案资源管理器