Windows Store apps开发[11]浅谈Windows 8 中的合约(contracts)

注:本系列学习帖子我在DevDiv.com移动开发社区原创首发

        转载请注明出处:BeyondVincent(破船)@DevDiv.com

如果你有什么问题也可以前往交流

下面是首发地址:

[DevDiv原创]Windows 8 Metro App开发Step by Step---(13个学习帖子)



     在Windows 8 Metro App开发中,你很快就会使用到合约功能,合约是Windows 8中至关重要的全新概念,作为Metro开发者,有必要掌握。目前关于合约的相关资料还比较少,在这里,我主要参考了msdn提供的一些文档,写此贴的目的是希望大家对合约有一个初步的了解,同时也欢迎大家来交流。

      在这篇文章中,我主要对合约进行一个概述。在下一篇文章中,我会通过编程的方式,向大家介绍如何使用合约


本文,我主要介绍如下内容:

1、合约概述

2、合约类型


更多内容请查看下面的帖子


Windows 8 Metro App开发Step by Step

1、合约概述

    Metro 风格的应用程序使用合约来声明它们支持哪些与其他应用程序和 Windows 进行的交互。对于其中的一些合约,您可能早有耳闻,如“搜索”合约和“共享”合约。通过各种合约,应用程序不仅可以通过与系统协作来提高运行速度,而且在用户安装了多个实施合约的应用程序时,它们还可以彼此配合来保持良好的运行状态。


合约:针对特定目的启动 Metro 风格的应用程序(包含上下文)


    Windows 8 合约发挥着纽带的作用,它可以将您的应用程序与其他 Metro 风格的应用程序以及系统 UI 相关联。例如,“文件打开选取器”合约允许用户将文件从一个应用程序导入到另一个。使用“搜索”合约,用户能够在系统中的任意位置搜索应用程序,并在多个应用程序之间快速传输查询。在这些案例以及许多其他合约定应用场景中,Windows 都需要具备可通过应用程序 UI 启动应用程序的功能,这样用户才能快速高效地完成特定任务。这正是我们的激活平台和 API 发挥其作用的平台。

   

    Windows 8已经定义了一些合约。最重要的合约有:搜索合约(search contract)、共享合约(share contract)、设置合约(settings contract)和App To App picker合约。这里也有更多的何用合约,在应用中使用这些合约时,一定要注意用户体验。


下面我们就来分别看看Windows 8中的合约类型。


2、合约类型

    在介绍合约之前,先跟大家分享一个热键组合——Windows键+C键(或将鼠标移到屏幕的最右上角或右下角),就可以启动系统的Charm面板,Charm面板里面有搜索、共享、设定等相关功能,这些功能与下面介绍的合约有密切关系。


接下来,我们对各种合约进行初步的认识:

Search contract

    Search contract 可以用来建立针对 Metro Style Apps 中内容的搜索功能。我们可以轻松的使用Search contract ,让用户能直接通过 Windows 8 里的 Search Charm 对我们开发的 Metro Style Apps 的内容里的字符串或是文字进行查找。

    一旦我们的 App 实现了Search contract,当使用者打开 Windows 8 的 Search Charm 时,我们的 App 就会出现在右下方的 Apps 列表,使用者就可以直接在该接口点选我们的 App 的 Icon,针对我们的 App 中的数据内容进行s搜索,如此一来,我们也不用特别去多花心思去为我们的每一个 App 设计个自的搜索接口,一切都交给 Windows 8 的 Search Charm 就行了。

   不过,通过Search contract 并不能针对 App 中特定文件的内容进行搜索,如果要实现特定文件内容的搜索的话,就得自己在 App 中写搜索的接口和相关逻辑开启 Windows 8 内置的 Search 面版热键为 Windows键 + Q键



Share contract

    Share contract 比较特别的地方是,它有「来源端 App」及「目标端 App」。如果我们开发的 Metro Style Apps 里会有文档可以当作数据源给其他的 Metro Style Apps 使用,那么这个 App 就会是来源端 App;相反的,如果我们的 Metro Style Apps 允许接受其他 Metro Style Apps 的数据作为数据的输入来源的话,这个 App 就是目标端 App,可以借助Share Target contract 来操作让它可以透过 Share Charm 接受其他 App 的数据源的功能。通过 Share Contract,我们就能使用 Windows 8 的 Share Charm,让用户更轻松的进行数据间的分享及传递了。

开启 Windows 8 内置的 Share 面版的热键为 Windows 键 + H 键。

Settings contract
    通过 Settings contract功能,我们可以让用户通过 Windows 8 的 Settings Charm 来针对我们开发的 Metro Style Apps 进行设定,如此一来,我们不用费心去特别设计一个设定专用的画面,其次,整个用户体验也和操作系统本身更为贴近。

开启 Windows 8 内置的 Settings 面版的热键为 Windows 键 + I 键。

Play To contract
    通过 Play To contract,我们可以轻松的让用户在我们开发的 Metro Style Apps 中进行播放的影片、音乐或是相片等等媒体文件,以串流的方式,通过兼容于 DLNA 的装置进行播放。若操作系统侦测到有支持相关功能的其他装置,会自动将那些装置显示在 Devices Charm 里,而我们就可以通过 Play To 功能,将媒体以串流的传输方式传送过去。

开启 Windows 8 内置的 Devices 面版的热键为 Windows 键 + K 键。

App to App Picking contract 
    我们可以通过 App to App Picking contract,让我们的 App 开启文件系统、网络上或是其它在线服务中的文件,甚至使某个 App 具备能通过其他 App 进行浏览或是开启特定类型文件的能力;除此之外,使用者在开启特定类型文件时,也可以自行决定要使用哪一个 App 来开启。

更多的合约类型参考下面的链接:
App contracts and extensions (Metro style apps)

你可能感兴趣的:(windows,UI,移动开发,search,文档,平台)