应用合约和扩展

应用合约和扩展(Windows 运行时应用)

[ 本文适用于编写 Windows 运行时应用的 Windows 8.x 和 Windows Phone 8.x 开发人员。如果你要针对 Windows 10 进行开发,请参阅 最新文档 ]

应用使用合约和扩展来声明它们支持的与其他应用的交互。 这些应用必须在程序包清单中添加必需的声明并调用必需的 API 才能与其他合约参与者通信。

合约 合约类似于一个或多个应用之间的协议。合约定义了要参与这些独特的交互,应用必须满足的要求。

例如,请考虑在两个应用之间共享信息。提供共享内容的应用通过满足特定的需求来支持来源合约,而接收共享内容的应用通过满足一组不同的需求来支持目标合约。两个应用无需获知彼此。加入共享合约的每个应用都能够确信共享工作流完全受支持。

扩展 扩展类似于应用与操作系统之间的协议。扩展让应用开发人员能够对标准功能进行扩展或自定义,以便除了主要用于自己的应用外,还可用于其他应用。

使用程序包清单声明扩展。例如,应用可声明它处理带某些文件扩展名的文件,或者可声明它使用一个特定的动态连接库。在 Microsoft Visual Studio 中,使用“声明”选项卡。如果手动创建程序包,请参阅 Extensions element

后续章节介绍了各种内置应用合约和扩展。

用户头像提供程序(扩展)

当用户决定更换其用户头像时,他们可以选择现有的头像,或使用应用拍摄一张新的头像。 如果你的应用可以拍照,则可以使用此扩展,让 Windows 在“控制面板”的“用户头像设置”中列出你的应用。用户可从中选择你的应用来创建新的用户头像。

有关此扩展的详细信息,请参阅 UserInformation 参考主题。你还可以查看我们的用户头像名称示例

闹钟

应用程序可以将它们自己声明为系统警报应用。 当用户遍历选择 UI 以设置他们的系统闹钟时,只能选择声明为系统警报应用的应用程序。此行为与电脑设置页面上的详细状态插槽的操作方式类似。

应用服务

后台任务允许应用程序相互通信,并允许一个应用程序调用另一个应用程序。为了使用合约来提供或启动这些后台任务,需要将某个应用程序声明为应用服务。

约会提供程序

提供给应用程序与日历 API 交互并创建约会的能力。

自动播放(扩展)

当用户将一个设备连接到计算机时,Windows 会触发一个自动播放事件。此扩展使你的应用能够列为一个或多个自动播放事件的自动播放选择。

有关此扩展的详细信息,请参阅使用“自动播放”实现自动启动

后台任务(扩展)

应用可使用后台任务运行应用代码,甚至在应用挂起时也可以。后台任务用于不需要与用户交互的较小工作项。有关详细信息,请参阅使用后台任务支持应用后台任务简介

以下类型的后台任务可通过 Visual Studio 中的清单设计器提供。

任务类型适用于XAMLHTML详细信息
音频适用于 Windows 和 Windows Phone适用于 C#/C++/VB 和 XAML适用于 JavaScript 和 HTML 如何在后台播放音频(仅限 Windows)概述:Windows Phone 的后台音频
系统事件适用于 Windows 和 Windows Phone适用于 C#/C++/VB 和 XAML适用于 JavaScript 和 HTML 如何使用后台任务响应系统事件
计时器适用于 Windows 和 Windows Phone适用于 C#/C++/VB 和 XAML适用于 JavaScript 和 HTML 如何在计时器上运行后台任务
推送通知适用于 Windows 和 Windows Phone适用于 C#/C++/VB 和 XAML适用于 JavaScript 和 HTML 使用 WNS 发送推送通知
位置适用于 Windows 和 Windows Phone适用于 C#/C++/VB 和 XAML适用于 JavaScript 和 HTML 快速入门:在后台侦听地理围栏事件
设备使用触发器适用于 Windows 和 Windows Phone适用于 C#/C++/VB 和 XAML适用于 JavaScript 和 HTML 从后台任务访问传感器和设备
控制通道仅适用于 Windows适用于 C#/C++/VB 和 XAML不适用于 JavaScript 和 HTML 如何创建使用后台网络触发器的锁屏应用
聊天消息通知仅适用于 Windows Phone适用于 C#/C++/VB 和 XAML适用于 JavaScript 和 HTML
要点  这种类型的后台任务不适用于所有 Windows Phone 应用商店应用。除非你的开发人员帐户由 Microsoft 专门配置,否则对这些 API 的调用将在运行时失败。
 

 

更新任务(扩展)

更新任务是用户将你的应用更新到较新版本后直接运行的后台任务。这使你的应用有机会执行配置任务(如设置推送通知通道),而不要求用户先启动更新的应用。

有关此扩展的详细信息,请参阅如何使用更新任务

缓存文件更新程序合约

你可以提供特定文件的更新,以帮助想要使用你的应用作为中央存储库的用户来跟踪和维护文件。例如,Microsoft OneDrive 可跟踪一个文件来确保用户看到该文件的最新版本,如果 OneDrive 应用可提供较新的版本,则触发该文件的更新。此外,如果用户保存一个被跟踪文件的较新版本,OneDrive 可触发对它的文件版本的更新,以确保 OneDrive 始终具有最新版本。

请参阅与文件选取器合约集成快速入门:与文件选取器合约集成

相机设置(扩展)

设备制造商可使用 Windows 应用商店设备应用来自定义可显示更多相机选项的布局。“其他选项”布局可出现在使用 CameraCaptureUI 类拍照的应用中。有关详细信息,请参阅如何自定义摄像头选项(Windows 应用商店设备应用)

DIAL 协议

如果你正在使用网络设备,你可以使用 DIAL 协议来启动 Xbox One 上的应用程序。如果想要运行的应用程序不可用,你甚至可以使用 DIAL 网络安装该应用程序,然后运行它。

文件激活(扩展)

具有相同文件扩展名的文件具有相同的文件类型。你的应用可以使用现有的已知文件类型(例如 .txt),或者创建一个新文件类型。文件激活扩展让你可以定义一种新的文件类型或注册以处理某种文件类型。

参阅如何处理文件激活

“文件打开选取器”合约

你可以帮助使用其他应用的用户直接选取你应用中的文件。用户可自由且灵活地选择由应用存储和提供的文件。

加入此合约可帮助你提高应用的流行度和采用率。 有关详细信息,请参阅与文件选取器合约集成

“文件保存选取器”合约

你可以帮助使用其他应用的用户直接将文件保存到你的应用中。用户可自由且灵活地将文件保存到你的应用中,以便他们可以在切换到你的应用时快速而又方便地访问文件。

加入此合约可帮助你提高应用的流行度和采用率。 有关详细信息,请参阅与文件选取器合约集成

锁屏调用

如果手机锁定,存在用户可以执行的有限数量的交互操作。在某些情况下,用户希望无需解锁手机即可应答 VoIP 电话呼叫。此合约使上述操作成为可能。

媒体播放

Windows 应用商店应用需要支持此合约来表明它们支持 DVD 播放。

“播放到”合约

你可以帮助用户从你的应用内向连接的 DLNA 设备播放数字媒体。用户点击“连接”超级按钮,然后点击“播放到”按钮,你的应用会将用户的媒体播放到 DLNA 设备。

加入此合约让应用易于使用,吸引用户在你的应用中停留更长时间。有关详细信息,请参阅使用“播放到”向设备流式播放媒体

预安装配置任务

有时,你的应用程序需要在安装之后立即更新。此合约允许你无需任何用户交互即可立即启动更新任务,以确保立即更新应用程序。

打印 3D 工作流

3D 打印机制造商可以提供 Windows 应用商店设备应用来提供 3D 打印对话框中的独特体验。如果他们未提供,Windows 将提供默认的 3D 打印体验。

打印任务设置(扩展)

设备制造商可使用 Windows 应用商店设备应用来自定义可显示高级打印设置的布局。有关详细信息,请参阅如何自定义打印设置(Windows 应用商店设备应用)

URI 激活(扩展)

你的应用可以使用现有 URI 方案(例如 mailto),或者创建自定义 URI 方案。URI 激活扩展使你能够定义自定义 URI 方案或注册处理现有 URI 方案。

请参阅如何处理 URI 激活

限制启动

子应用容器在 Windows 应用商店应用可能执行不受信任的内容时提供额外的运行时隔离。这使应用保护自己免受此不受信任的内容的影响。例如,Microsoft Word 可能保护用户的资源免受正在编辑文档的影响。

“搜索”合约

你可以向应用添加搜索窗格,以便用户不仅可搜索你的应用内容,还可搜索其他应用中的内容。用户也可将搜索查询本身传输到其他应用。加入此合约,即表明你同意使你的应用内容可供其他参与者搜索,为这些参与者提供你应用中的搜索结果。

参与此合约有助于提高应用的流量和使用率。 有关详细信息,请参阅向应用添加搜索

设置合约

你可对影响你应用的用户体验的设置提供快速、上下文中的访问。

加入此合约可确保你的应用与 Windows 设置模型保持一致。有关详细信息,请参阅添加应用设置

“共享”合约

你可帮助用户与其他应用或服务共享你应用中的内容,或者反向共享。 加入共享合约意味着你无需编写额外的代码或为其他开发人员提供你应用的 SDK,即可共享内容。支持“共享”合约的应用可以与其他任何同样支持“共享”合约的应用相互之间自动共享内容。

参与此合约有助于提高应用的流量和使用率。 有关详细信息,请参阅添加共享

SSL/证书(扩展)

数字证书用于针对一个实体来验证另一个实体。例如,证书主要用于通过 SSL 向 Web 服务验证用户。此扩展使你能够在你的应用中安装数字证书。

参阅加密数据和使用证书

Web 帐户提供程序

支持单一登录 (SSO) 允许用户登录一次,并支持该登录操作将帐户信息提供给多个应用程序。这经由其他应用提供更丰富的体验,并且还支持聚合支持 SSO 的多重身份。

 

 

显示:
© 2017 Microsoft