0

此外LSCopyDefaultApplicationURLForURL,还有LSCopyApplicationURLsForURL获取所有应用程序的功能,而不仅仅是默认应用程序。

如果您只想获取 MIME 类型的默认应用程序,可以使用LSCopyDefaultApplicationURLForContentType,但它似乎没有获取所有支持的应用程序的等价物。

如何在磁盘上没有实际文件的情况下获取 MIME 类型的所有受支持应用程序?

4

1 回答 1

2

LSCopyAllRoleHandlersForContentType将返回一个应用程序包 ID 列表,这些 ID 已注册以处理特定内容类型(使用 UTI)。

此功能与此功能之间的逻辑区别在于LSCopyApplicationURLsForURL,可以将列表过滤为仅以特定方式处理所述内容的那些应用程序(仅显示、编辑等)。如果您想要所有应用程序,请通过kLSRolesAll.

要获取实际的应用程序 URL,请LSCopyApplicationURLsForBundleIdentifier使用返回的应用程序 ID 之一进行调用。

于 2019-04-26T16:54:50.200 回答