標籤:blog http io os ar strong 資料 sp on
原文:快速構建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概述及原理