跨越多個設(shè)備共享的自動無縫上下文的制作方法
【專利說明】跨越多個設(shè)備共享的自動無縫上下文
[0001]優(yōu)先權(quán)要求
[0002]本申請要求2012年11月16日提交的美國專利申請序列N0.13/679,261的優(yōu)先權(quán),其全部內(nèi)容通過引用并入在此。
技術(shù)領(lǐng)域
[0003]本發(fā)明的實施例涉及在移動和固定位置的計算系統(tǒng)和設(shè)備的操作。一些實施例涉及在多個系統(tǒng)和設(shè)備之間的上下文共享。
【背景技術(shù)】
[0004]許多人每天與多于一臺的計算設(shè)備交互。這些設(shè)備的一些是靜止的或定位在固定位置,包括臺式計算機、工作站、個人數(shù)據(jù)服務(wù)器和電視機。這些設(shè)備的一些是移動的,包括蜂窩電話、平板電腦、超級本、膝上型計算機,以及音樂播放器。
[0005]當(dāng)用戶遠離靜止計算設(shè)備但想繼續(xù)使用應(yīng)用程序時,用戶通常鎖定或關(guān)閉靜止設(shè)備并且在移動設(shè)備上重新啟動相關(guān)的應(yīng)用程序。類似地,當(dāng)用戶到達靜止計算設(shè)備但想繼續(xù)使用來自移動設(shè)備的應(yīng)用程序時,用戶通常鎖定或關(guān)閉移動設(shè)備的應(yīng)用程序并且在靜止設(shè)備上重新開始類似的應(yīng)用程序。例如,考慮這樣場景,用戶可能正在家用臺式計算機上閱讀網(wǎng)頁文章,但在他或她可以讀完該文章之前離開前往辦公室。如果用戶希望在他或她的具有上網(wǎng)瀏覽能力的移動智能手機上繼續(xù)閱讀文章,則用戶將手動輸入網(wǎng)頁文章地址,并且一定會在該文章內(nèi)找到他或她的位置。
[0006]雖然應(yīng)用程序上下文信息的手動傳遞是可能的,但該手動傳遞可能是耗時的,并且需要通過用戶的額外的步驟和配置。另外,盡管用戶可以感知何時他或她將要離開靜止計算設(shè)備,應(yīng)用程序上下文信息的傳遞可能不會響應(yīng)于用戶的位置的改變自動發(fā)生。
【附圖說明】
[0007]圖1示出根據(jù)一些實施例的通過W1-Fi網(wǎng)絡(luò)執(zhí)行的設(shè)備發(fā)現(xiàn)的示例。
[0008]圖2示出根據(jù)一些實施例的在用于在用戶計算設(shè)備上執(zhí)行的中間件層中實現(xiàn)的示例性功能模塊。
[0009]圖3示出根據(jù)一些實施例的用于設(shè)備注冊、近距離檢測以及上下文傳遞的示例性數(shù)據(jù)流。
[0010]圖4示出根據(jù)一些實施例的用于設(shè)備注冊的示例性數(shù)據(jù)流。
[0011]圖5示出根據(jù)一些實施例的用于檢測和傳遞上下文的示例性操作流程。
[0012]圖6示出根據(jù)一些實施例的用于執(zhí)行無線應(yīng)用程序上下文傳遞的示例性方法。
[0013]圖7示出示例性移動設(shè)備,在其上可部署本公開中所描述的配置和技術(shù)。
[0014]圖8示出可被用作用于本公開所描述的計算設(shè)備的計算平臺的示例性計算機系統(tǒng)。
【具體實施方式】
[0015]以下描述和附圖充分示出具體實施例,以使本領(lǐng)域的技術(shù)人員能夠?qū)嵺`它們。其他實施例可結(jié)合結(jié)構(gòu)、邏輯、電氣、過程和其他變化。一些實施例的部分和特征可以被包括在這些其他實施例的那些中或者用其取代。在權(quán)利要求中所提出的實施例涵蓋那些權(quán)利要求的所有可用等效物。
[0016]本文描述的各種技術(shù)和結(jié)構(gòu)提供用于跨越多個計算設(shè)備的自動應(yīng)用程序上下文共享,考慮設(shè)備能力和用戶偏好。應(yīng)用程序上下文可以包括關(guān)于在計算設(shè)備上執(zhí)行的活動和應(yīng)用程序的概括的或詳細的信息,諸如正被編輯的文件內(nèi)的定位或位置、正被訪問的網(wǎng)頁的統(tǒng)一資源定位符(URL),或者直到已經(jīng)被觀看的視頻流或下載視頻的時間。
[0017]根據(jù)現(xiàn)有技術(shù),當(dāng)用戶正在編輯靜止或固定位置的計算設(shè)備上的文檔時,如果用戶在離開靜止或固定位置設(shè)備之后想要繼續(xù)編輯在移動設(shè)備上的文檔,則用戶必須手動地傳遞文件并且啟動在移動設(shè)備上的兼容的應(yīng)用程序。同樣,如果用戶觀看靜止計算機或電視上的在線的視頻流的一部分,則用戶必須使用移動設(shè)備手動定位視頻,并且手動搜索視頻內(nèi)的相同位置。
[0018]在本文描述的實施例的一些中,應(yīng)用程序上下文信息傳遞可以檢測用戶何時物理地移動移動設(shè)備以遠離靜止或固定位置的計算設(shè)備(或反之亦然),以確定用于在靜止設(shè)備和移動設(shè)備之間傳遞應(yīng)用程序上下文信息的適當(dāng)時間。這些技術(shù)可以用于自動化應(yīng)用程序上下文信息的傳遞,從而無需人工干預(yù)或指導(dǎo)使用戶能夠繼續(xù)使用應(yīng)用程序。
[0019]因此,本文所描述的技術(shù)和配置使用無線通信協(xié)議允許一個計算設(shè)備移動遠離另一計算設(shè)備的自動檢測,以及無線通信協(xié)議的自動選擇和使用(包括使用相同的協(xié)議傳遞),以確保應(yīng)用程序上下文信息傳遞。合適的無線通信協(xié)議可以包括,例如,藍牙或Wi_Fi(例如,IEEE802.11標準)協(xié)議。在一些示例中,當(dāng)兩個設(shè)備經(jīng)由無線協(xié)議被連接時,如果任一設(shè)備移動超出無線協(xié)議的范圍,則該設(shè)備不再能夠使用該無線協(xié)議傳遞信息。在本文描述的實施例的一些中,設(shè)備可使用第一協(xié)議檢測一個計算設(shè)備何時遠離另一個,并使用具有更長的通信范圍的第二協(xié)議來傳遞信息。例如,當(dāng)設(shè)備移動超出藍牙協(xié)議的通信范圍時,該設(shè)備可以使用較長范圍的W1-Fi協(xié)議完成應(yīng)用程序上下文信息傳遞。這種技術(shù)可以用來自動化無線通信協(xié)議的選擇,從而當(dāng)設(shè)備在另一無線協(xié)議的范圍內(nèi)時保證應(yīng)用程序上下文信息的傳遞。
[0020]圖1提供計算環(huán)境內(nèi)的設(shè)備發(fā)現(xiàn)操作100的示例性圖示。為了檢測近距離并且完成應(yīng)用程序上下文傳遞,主體設(shè)備必須感知彼此。在一些實施例中,設(shè)備發(fā)現(xiàn)和設(shè)備連接的一個或多個形式可在計算環(huán)境內(nèi)使用。例如,根據(jù)對等網(wǎng)絡(luò)(P2P)網(wǎng)絡(luò)連接的使用,設(shè)備可以通過使用標準網(wǎng)絡(luò)掃描程序被發(fā)現(xiàn)。P2P設(shè)備發(fā)現(xiàn)可包括以藍牙“設(shè)備發(fā)現(xiàn)”或W1-Fi “P2P查找”模式執(zhí)行操作。
[0021]跟隨設(shè)備發(fā)現(xiàn),設(shè)備可以執(zhí)行服務(wù)發(fā)現(xiàn),以確認發(fā)現(xiàn)的設(shè)備是否能夠進行應(yīng)用程序上下文傳遞。在一些無線配置中,主體設(shè)備可能不感知的其他附近設(shè)備的存在。如果設(shè)備不感知其他附近設(shè)備,則中間件,其被包括在多個設(shè)備之一上,可以發(fā)送廣告上下文傳遞特征的多播消息。如果另一設(shè)備接收該多播消息,則在接收設(shè)備上的中間件可通過確認其存在并且在設(shè)備之間建立連接響應(yīng)。
[0022]發(fā)生在聯(lián)網(wǎng)環(huán)境中的設(shè)備發(fā)現(xiàn)操作100可以包括靜止或固定位置的計算設(shè)備的使用,諸如臺式計算機102、W1-Fi接入點104,以及一個或多個移動設(shè)備106。移動設(shè)備106可以包括移動電話108、筆記本計算機110,或任何其他自供電的便攜式計算設(shè)備。以識別附近移動設(shè)備,臺式計算機102發(fā)送多播請求112到接入點104,并且接入點104轉(zhuǎn)播該多播請求112到移動設(shè)備106。移動設(shè)備106可以提供多播響應(yīng)114到接入點104,并且接入點104可以將該多播響應(yīng)114轉(zhuǎn)發(fā)到臺式計算機102。在接收到多播響應(yīng)114時,臺式計算機102可用移動設(shè)備106形成建立的連接116。
[0023]在另一示例中,設(shè)備發(fā)現(xiàn)操作100可直接在兩個設(shè)備之間被執(zhí)行。例如,設(shè)備發(fā)現(xiàn)可以通過無線網(wǎng)絡(luò)協(xié)議通過P2P、分散或直接連接操作執(zhí)行,諸如W1-Fi或藍牙。參照圖1,P2P設(shè)備發(fā)現(xiàn)可用從計算設(shè)備102傳輸?shù)揭苿釉O(shè)備106的P2P請求118進行。如果移動設(shè)備106使用兼容P2P協(xié)議,則移動設(shè)備106可提供P2P響應(yīng)120。一旦P2P響應(yīng)120已經(jīng)接收到,該臺式計算機102可用各個移動設(shè)備106形成直接連接116。在其他示例中,P2P設(shè)備發(fā)現(xiàn)可以由移動設(shè)備發(fā)起到靜止或固定位置的計算設(shè)備。
[0024]盡管術(shù)語“靜止”或“固定位置”在本公開中被采用以將這種計算設(shè)備與“移動”設(shè)備進行對比,但是實施例不限于涉及不動設(shè)備的上下文。例如,膝上型計算機、筆記本、超級本、平板電腦,或其他能夠移動的或便攜式計算設(shè)備可以操作作為靜止或固定位置的計算設(shè)備,其當(dāng)前(或主要)用于特定部位或位置。進一步地,與設(shè)備發(fā)現(xiàn)操作100—起使用的靜止或固定位置設(shè)備不限于臺式計算機102的使用,但可包括任何類型的能夠移動的或便攜式計算設(shè)備。
[0025]圖2提供在中間件層202上實施的用于在用戶計算設(shè)備上執(zhí)行的功能模塊200的示例性圖示。中間件層202可以被實現(xiàn)為提供相應(yīng)的服務(wù)的一個或多個軟件應(yīng)用程序,以促進自動上下文共享操作。在一些實施例中,靜止和移動計算設(shè)備可以包括中間件層202。中間件層可以包括組件,以檢測設(shè)備的接近(接近度檢測組件204)、聚合應(yīng)用程序上下文信息(上下文聚合組件206)、選擇適當(dāng)?shù)纳舷挛膫鬟f介質(zhì)(上下文傳遞介質(zhì)選擇組件208)、傳遞或接收應(yīng)用程序上下文信息(上下文TX/RX組件210),在本地應(yīng)用程序中反映應(yīng)用程序上下文(上下文反映組件212)信息,并管理本地安全和電源設(shè)置(安全模塊組件214)。
[0026]這種組件可以在設(shè)備上安裝、執(zhí)行或部署的中間件中被實現(xiàn),但基于軟件服務(wù)的中間件是許多潛在類型的應(yīng)用程序上下文傳遞實現(xiàn)之一。雖然本公開描述在中間件層軟件服務(wù)中的各種實施例,其他實施例可以在一種或多種其他類型的應(yīng)用程序上下文傳遞實現(xiàn)中被實現(xiàn),包括硬件、固件、軟件等。另外,應(yīng)當(dāng)理解,該中間件層202的各種組件可以被進一步組合或分離。
[0027]中間件層202可以包括接近度檢測組件204。接近度檢測組件204可以檢測兩個設(shè)備的當(dāng)前接近度(兩個設(shè)備是否彼此接近),并且可以檢測兩個設(shè)備是否移向彼此或遠離彼此。接近度檢測組件204可以連續(xù)地檢測這些設(shè)備的接近度的變化。在一個示例中,當(dāng)中間件層202檢測到用戶正在遠離他或她的臺式計算機(從靜止設(shè)備的附近移除)時,接近度檢測組件204通知上下文聚合組件206。
[0028]中間件層202可以包括上下文聚合組件206。上下文聚合組件206可聚合一個或多個應(yīng)用程序的上下文,例如,在YouTube的視頻流的播放期間記錄時間。當(dāng)接近度檢測組件204確定用戶正從他或她的臺式計算機遠離時,接近度檢測組件204通知上下文聚合組件206,并且上下文聚合組件206自動聚合對于所有主動應(yīng)用程序的應(yīng)用程序上下文信息。
[0029]中間件層202可以包括上下文傳遞介質(zhì)選擇組件208。用于在設(shè)備之間傳遞上下文的通信介質(zhì)可以基于介質(zhì)是否已經(jīng)連接以及對于傳遞將需要多少時間來決定。如果有大量的上下文數(shù)據(jù)或可用的通信介質(zhì)是緩慢的,則該中間件可使用另一種可用的高速通信介質(zhì)傳遞上下文數(shù)據(jù)。例如,如果在傳遞的時候該設(shè)備使用藍牙被連接,則中間件可以確定通過藍牙的上下文傳遞將不會在設(shè)備超出彼此范圍之前被完成。如果中間件確定通過藍牙的上下文傳遞可能無法完成,則在兩個設(shè)備中的中間件可以建立W1-Fi連接來傳遞數(shù)據(jù)。上下文傳遞介質(zhì)選擇組件206可以選擇哪個通信介質(zhì)要用于傳遞上下文信息,例如,當(dāng)在設(shè)備在彼此的范圍內(nèi)時藍牙傳遞可能無法完成時選擇以使用W1-Fi介質(zhì)。中間件層202可以包括上下文TX/RX組件210,其可以執(zhí)行上下文信息的傳遞或接收。
[0030]在一些實施例中,中間件層20