我正在编写一个图像查看器应用程序,我需要将其设置为 jpeg/gif 文件的默认应用程序。有一个 API LSGetApplicationForItem/Info 用于获取有关默认应用程序的信息。但是我找不到可以将我的应用程序设置为图像文件的默认查看器的 API。
你能帮忙吗
我正在编写一个图像查看器应用程序,我需要将其设置为 jpeg/gif 文件的默认应用程序。有一个 API LSGetApplicationForItem/Info 用于获取有关默认应用程序的信息。但是我找不到可以将我的应用程序设置为图像文件的默认查看器的 API。
你能帮忙吗
你想要的LSSetDefaultRoleHandlerForContentType
功能。通过kUTTypeGIF
GIFkUTTypeJPEG
和 JPEG。
请仅在用户明确告诉您时才这样做。否则,他们会恨你。
据我所知,没有公共 API 可以做到这一点。相反,您使用 Info.plist(或 Xcode 中信息编辑器的文档类型部分)注册,您是查看和/或编辑您感兴趣的任何文件类型的提供者。这将导致系统选择如果没有其他应用程序可以打开这些文件类型,则您的应用程序,并且如果用户在 Finder 中选择文件时从上下文菜单中选择打开方式,则会将您置于运行状态。