在Mac OS X上,如何判断给定的应用程序是否打开特定类型?
我有两个我感兴趣的UTI:public.text和public.image,我有一个应用程序列表。我想按这两种类型过滤列表,因此我有一个文本查看器列表和一个图像查看器列表。
我在SO上看到了一个相关问题,可以获得特定文档类型的所有查看者列表。我可以做到并获得该集合的交集,但我宁愿能够单独询问每个应用程序。
是否有任何Cocoa或Carbon要求?
答案 0 :(得分:2)
如果您需要给定文档类型的应用程序列表,请使用LSCopyAllRoleHandlersForContentType。
如果您需要特定应用程序的文档类型列表,请打开应用程序的Info.plist文件并阅读CFBundleDocumentTypes键。
答案 1 :(得分:0)
Launch Services是你的朋友。但我不认为有任何API可以让特定应用程序支持UTI,所以我建议你使用你已经描述的内容,不幸的是。