乐趣区

关于macos:Launch-Services-Programming-Guide-01介绍

本文翻译自 Launch Services Programming Guide。

Launch Services 是一种 API,它能使运行中的应用程序能够以相似于 Finder 或 Dock 的形式关上其余应用程序,或文档文件,或 URL(对立资源定位符)。

应用 Launch Services,应用程序能够执行以下工作:

* 关上(启动或激活)另一个应用程序
* 在另一个应用程序中打开文档或 URL
* 指定用于关上给定文档或 URL 的首选应用程序
* 注册无关应用程序可能关上的文档文件和 URL 品种的信息
* 获取适当的信息以在屏幕上显示文件或 URL,例如其图标,显示名称和品种名称
* 保护和更新“最近的我的项目”菜单中的内容 

只管大多数这些服务通常由 Finder 执行,但其余应用程序也可能将用它们实现以下目标:关上电子邮件附件,打开文档中嵌入的 URL,运行帮忙程序或关上由另一个应用程序创立的嵌入文档组件,或者要求它进行查看或编辑。

Launch Services 的许多性能以前都是由 Desktop Manager 提供的。然而,随着 Mac 应用程序 bundles 的呈现,Desktop Manager 失去了它的用途,因为它不理解 bundled 的应用程序,而只是疏忽了它们。同样,Launch Services 用于解决 URL 的性能以前是通过 Internet Config API 实现的。Launch Services 用提供相似性能的新 API 代替并取代了 Desktop Manager 和 Internet Config,但该 API 旨在在 OS X 环境中失常运行。

Launch Services 是专门为防止应用程序广泛要求 Finder 为其关上应用程序,文档或 URL 而创立的。过来,以相似于 Finder 的形式关上此类我的项目须要理解多个 API,包含 Desktop Manager,File Manager,Translation Manager,Internet Config,Process Manager 和 Apple Event Manager。Finder 还具备桌面数据库的隐性常识以及其余信息(指确定关上给定文档的正确应用程序的信息,无奈在其余中央获取)。

Launch Services 从 Finder 中删除了这些专业知识,并将其隔离在任何应用程序都能够应用的单个简略 API 中。OS X Finder 依据用户的申请应用 Launch Services 关上应用程序,文档和 URL。因为 Finder 除了调用 Launch Services 外没有其余操作,因而,为这些目标应用 Launch Services 的任何客户端都能够保障能够实现与 Finder 自身雷同的行为。

谁应该浏览本文件

本文档实用于其应用程序须要关上其余应用程序,关上属于它们的文档文件或 URL,或以相似于 Finder 的形式在屏幕上显示文件或 URL 的所有开发人员。无关 Launch Services API 的更多详细信息,请参阅相干文档 Launch Services Reference,其中提供了对 Launch Services 函数,数据类型,常量和后果代码的全面形容。

本文件的组织

本文档蕴含以下章节:

Launch Services Concepts 从开发人员和用户的角度提出了 Launch Services API 背地的概念性思维。
Launch Services Tasks 介绍了如何应用 Launch Services 在应用程序中执行常见工作。
Glossary 定义了与 Launch Services 及其操作无关的各种术语。

退出移动版