注册应用程序以打开图像文件
Posted
技术标签:
【中文标题】注册应用程序以打开图像文件【英文标题】:Register app to open image files 【发布时间】:2012-02-28 12:02:02 【问题描述】:通过在我的 info.plist 中包含以下内容,我已成功注册我的应用以打开 PDF 文件:
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>PDF</string>
<key>LSHandlerRank</key>
<string>Alternate</string>
<key>LSItemContentTypes</key>
<array>
<string>com.adobe.pdf</string>
</array>
</dict>
</array>
但是,我似乎无法注册我的应用程序以打开任何图像文件,我不仅尝试注册基本图像 UTI,还尝试注册特定类型,如 png 和 jpg。是否可以注册打开图片文件?
【问题讨论】:
【参考方案1】:坏消息 - 无法完成。希望这些事情能在文档中说明。
【讨论】:
【参考方案2】:使用源代码打开 plist 并将其添加到文档中。
<dict>
<key>CFBundleTypeName</key>
<string>All Files</string>
<key>CFBundleTypeIconFiles</key>
<array/>
<key>LSItemContentTypes</key>
<array>
<string>public.data</string>
<string>public.content</string>
</array>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>LSHandlerRank</key>
<string>Owner</string>
</dict>
我希望这对你有用。
【讨论】:
【参考方案3】:使用编辑器打开 plist...
大小写等很关键,建议同时指定小写和大写文件扩展名。
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>jpg</string>
<string>JPG</string>
</array>
<key>CFBundleTypeName</key>
<string>Images</string>
<key>CFBundleTypeRole</key>
<string>Editor</string>
然后保存文件。现在应该注册应用来处理这种类型的文件。
【讨论】:
以上是关于注册应用程序以打开图像文件的主要内容,如果未能解决你的问题,请参考以下文章
从我的 Android 应用程序以编程方式打开选定的文件(图像、pdf、...)?