快速构建Windows 8风格应用14-ShareContract概述及原理
原文:快速构建Windows 8风格应用14-ShareContract概述及原理
本篇博文主要介绍Share Contract概述、Share Contract实现原理、实现Share Contract意义。
Share Contract概述
我们都知道Windows 8中包含3类不同的Contract:Search Contract、Share Contract、Setting Contract。这三种Application Contract为整合Windows 8体验提供了一致性的编程模型。
现在微博,人人都是非常火的平台,我们很多人都愿意将自己所见所闻在这些平台上进行分享。在我们电脑上可能包含许多个不同的应用,包括社交类。
那么我们怎么将这些应用信息与社交类应用进行分享呢?Windows 8为我们提供了强大的Share Contract,可以让两个应用之间信息进行共享。
Share Contract提供了一种轻量级的,与上下文相关的共享体验。
Windows 8完成了允许跨应用共享的繁重工作,同时共享源应用应该包含尽可能多的数据格式,同样共享目标也应该支持更过的格式。

Share Contract实现原理
Windows 8为了方便开发者在应用中实现Share Contract已经做了大量的工作,开发者不需要关系不同应用程序之间相互共享的协议,就可以很轻松的实现共享。开发者只需要在自己的应用程序中申明有东西可以共享或者可以接受其他应用程序共享的内容就OK了。
Windows 8为Share Contract构建的结构中包含“源程序”和“目标程序”,“源程序”和“目标程序”之间的传输纽带是“数据包”,并且“数据包”存在于“源程序”当中。
那么如何实现从源程序到目标程序的共享呢?

1) 源应用需要在DataTransfer Manager(数据传输管理器)中注册,并声明要传输的DataPackage(数据包);
2) 共享代理中,用户选择“Share Contract”(共享),激活应用;
3) 源应用中接受事件,填充数据包;
4) 完成异步调用后返回;
5) 共享代理中筛选出可以进行共享的目标应用和快速链接列表;
6) 用户决定选择哪一个目标应用或快速链接;
7) 共享代理将目标应用激活,方便进行共享,并且目标应用不需要全屏显示,只需要合适的大小显示就可以了。
8) 目标应用处理获取到的数据包中内容;
9) 当目标应用处理完成后,通知共享代理已经完成,就可以移走目标应用的共享页面了;
实现Share Contract意义
1) 我们的应用可以建立用户与他们关心的人,关注的其他应用程序间的联系;
2) 用户可以通过其他的应用程序分享到我们开发的应用中;
3) 越多的应用程序,分享机会就更多;
快速构建Windows 8风格应用14-ShareContract概述及原理的更多相关文章
- 快速构建Windows 8风格应用23-App Bar概述及使用规范
原文:快速构建Windows 8风格应用23-App Bar概述及使用规范 本篇博文主要介绍App Bar概述.App Bar命令组织步骤.App Bar最佳实践. App Bar概述 Windo ...
- 快速构建Windows 8风格应用1-开发工具安装及模拟器使用
原文:快速构建Windows 8风格应用1-开发工具安装及模拟器使用 本篇博文主要介绍的是开发Windows 8风格应用中常用的两个开发工具:Visual Studio 2012和Expression ...
- 快速构建Windows 8风格应用21-构建简单媒体播放器
原文:快速构建Windows 8风格应用21-构建简单媒体播放器 本篇博文主要介绍如何构建一个简单的媒体播放器. <快速构建Windows 8风格应用20-MediaElement>博文中 ...
- 快速构建Windows 8风格应用36-商店应用发布流程
原文:快速构建Windows 8风格应用36-商店应用发布流程 引言 在发布应用之前,我们需要注册开发者账号才能够发布应用.我们可以登录https://appdev.microsoft.com/Sto ...
- 快速构建Windows 8风格应用32-构建辅助磁贴
原文:快速构建Windows 8风格应用32-构建辅助磁贴 引言 Windows Phone中,我们开发者可能会开发的一个功能点是将数据列表中某一项"Pin To Start(固定到开始屏幕 ...
- 快速构建Windows 8风格应用29-捕获图片与视频
原文:快速构建Windows 8风格应用29-捕获图片与视频 引言 本篇博文主要介绍Windows 8中相机的概念.捕获图片与视频的基本原理.如何实现捕获图片与视频.相机最佳实践. 一.相机 关于相机 ...
- 快速构建Windows 8风格应用17-布局控件
原文:快速构建Windows 8风格应用17-布局控件 本篇博文主要介绍三种常用的布局控件:Canvas.Grid.StackPanel. Panel类是开发Windows 8 Store应用中一个重 ...
- 快速构建Windows 8风格应用15-ShareContract构建
原文:快速构建Windows 8风格应用15-ShareContract构建 本篇博文主要介绍共享数据包.如何构建共享源.如何构建共享目标.DataTransferManager类. 共享数据包 Da ...
- 快速构建Windows 8风格应用13-SearchContract构建
原文:快速构建Windows 8风格应用13-SearchContract构建 本篇博文主要介绍如何在应用中构建SearchContract,相应的原理已经在博文<快速构建Windows 8风格 ...
随机推荐
- Redis集群方案及实现
在作出Redis群集解决方案,他跑了小半个.行表现得非常稳定在几乎相同的经历与大家分享,我写在前面的文章数据在线服务的一些探索经验,能够做为背景阅读 应用 我们的Redis集群主要承担了下面服务:1. ...
- JAVA —— 数据类型
引言:java 数据类型可分为两大类:基本数据类型和引用类型,其中基本数据类型又包括整形.浮点型.字符型和布尔型,而引用型变量与基本类型变量不同,它的值是指向内存空间的引用(地址),引用在其他语言中称 ...
- [模拟] hdu 4452 Running Rabbits
意甲冠军: 两个人在一个人(1,1),一个人(N,N) 要人人搬家每秒的速度v.而一个s代表移动s左转方向秒 特别值得注意的是假设壁,反弹.改变方向 例如,在(1,1),采取的一个步骤,以左(1,0) ...
- cocos2d-x教程2:在windows下怎样批量转换pvr,ccz为png或jpg
这是一个非经常见的功能,可是找了全网,竟然找不到,于是借鉴别人的批处理文件,改了下,就能够把整个文件夹的所有一次批量转换. 将这个bat文件暂定为,myConvert.bat,运行时就把这个bat文件 ...
- SpringMVC现实
夹 一个.前言 两.spring mvc 核心类和接口 三.spring mvc 核心流程图 四.spring mvc DispatcherServlet说明 五.spring mvc 父子上下文的说 ...
- Oracle语句优化1
Oracle语句优化1 优化就是选择最有效的方法来执行SQL语句.Oracle优化器选择它认为最有效的 方法来执行SQL语句. 1. IS NULL和IS NOT ...
- Swift——(两)Swift访问元组
在Swift在,获取元组的值到一个位置,通过三种方法: 1.使用元组变量/常量 @Author: twlkyao转载或者引用请保留此行. let http404Error = (404, &q ...
- JS 添加到事件的多个对象
费周折码如下面: 方法一: <em>v</em>ar pArys=document.getElementsByClassName("ps"); for(va ...
- nginx基础入门
nginx常常被用来处理静态资源如css.js.图片.html等,也被用作反向代理server.邮件server,也时常拿来做负载均衡.它的优势主要体如今对静态资源的处理上,这次抽出了点时间整理了一些 ...
- robot framework用python扩展编写自定义library
我的utils.py文件 #!/usr/bin/env python #-*- coding:utf8 -*- __version__ = '0.1' import sys reload(sys) s ...