Windows 上的应用操作是 Windows 应用可以实现和注册的独立的行为单元,以便可以由其他应用和体验访问,并无缝集成到用户的工作流中。
什么是应用操作?
应用操作是一种原子功能单元。 应用生成并注册动作,然后 Windows 或其他应用可以在用户工作流中与上下文相关的时间和位置向用户推荐已注册的动作。
应用动作实现
可以通过处理 URI 启动激活或通过实现IActionProvider接口进行 COM 激活来实现动作。 有关使用 URI 激活实现简单应用操作提供程序的演练,请参阅 在 Windows 上了解应用操作。
应用必须具有包标识才能注册应用操作。 MSIX 包清单提供了有关提供程序应用程序支持的操作的元数据。 有关 App Action 注册的应用包清单语法的详细信息,请参阅 actions-provider-manifest.md。
使用 JSON 格式定义动作,该格式提供有关一个或多个动作的元数据,其中包括动作的唯一标识符和描述,以及动作所处理的输入和输出列表等信息。 JSON操作定义文件作为内容与提供商应用一起打包。 应用程序包清单中指定了包内文件的路径,以便系统可以找到并读取操作定义。 有关声明操作的 JSON 格式的详细信息,请参阅 Windows 应用操作提供程序的操作定义 JSON 架构。
实体是应用作所针对的对象。 操作将实体作为输入,并且可以将实体作为输出返回。 实体被划分为子类型,以表示可以作用于的不同类型的内容,例如文档、照片和文本。 每个实体类型都有一组属性,这些属性提供与每种内容类型相关的信息,例如文件的路径或文件扩展名。 实体在动作定义 JSON 文件中表示为 JSON,以声明应用程序动作的输入和输出。 表示实体的一组 WinRT API 也可用于在代码中处理实体。 有关详细信息,请参阅 Windows.AI.Actions 命名空间。
负责任的 AI 说明
在构建 AI 支持的操作时,作为操作作者,当涉及返回给用户的实体时,您有责任执行内容审查和滥用监测。 有关Microsoft负责任的 AI 策略的详细信息,请参阅 Microsoft负责任的 AI:原则和方法
注释
请考虑儿童是否应该通过操作定义 JSON 中的“contentAgeRating”属性来访问该操作。
推荐的应用操作场景
应用操作旨在提供适用于提供者应用程序之外场景和工作流的原子功能单元。 例如,行动可以是翻译一段文本,或处理图像。 对于完全特定于实现该行为的 Windows 应用程序的场景,建议的做法是通过应用扩展实现自定义扩展点。 有关详细信息,请参阅 创建和托管应用扩展。
以下列表描述了一些功能类型,这些功能很适合实施为一个动作。
- 此功能广泛适用且可重用。 此功能适用于跨多个应用或上下文(例如文件作、打印)进行发现和重用。
- 其他应用可以撰写和扩展功能。
- 该功能依赖于上下文,应在运行时动态发现(例如,在 UI 中显示特定于上下文的命令)。
- 该功能与现有系统工具或其他应用生态系统集成。
- 此功能通过将复杂任务封装到一个更高级别的操作中(例如用户驱动的自动化),来简化用户交互。
- 该功能可以独立于应用的内部控制运行,不需要遵循严格的特定于应用的协议。
- 预期可以在系统或其他应用的各个部分(例如,用于操作文件或共享内容的 API)中以统一的方式发现和调用功能。