TWI627541B - Forwarding activity-related information from source electronic devices to companion electronic devices - Google Patents
Forwarding activity-related information from source electronic devices to companion electronic devices Download PDFInfo
- Publication number
- TWI627541B TWI627541B TW105127666A TW105127666A TWI627541B TW I627541 B TWI627541 B TW I627541B TW 105127666 A TW105127666 A TW 105127666A TW 105127666 A TW105127666 A TW 105127666A TW I627541 B TWI627541 B TW I627541B
- Authority
- TW
- Taiwan
- Prior art keywords
- electronic device
- activity
- information
- source
- event
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/543—User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
Abstract
所描述實施例將一活動從一源電子裝置轉移至一伴隨電子裝置。該源電子裝置接收描述在該源電子裝置處之一第一應用程式中執行的一活動的活動資訊並廣播包含用於該活動之一活動識別符的一活動公告。在接收到該活動公告後,該伴隨電子裝置判定與該第一應用程式相關聯的一第二應用程式是否在該伴隨電子裝置處可用。若該第二應用程式可用,則該伴隨電子裝置從該源電子裝置獲取延展活動資料並使用該延展活動資料以組態該第二應用程式及開始藉由該伴隨電子裝置處之該第二應用程式執行該活動。該源電子裝置亦可將與活動相關之資訊(例如,來自該源電子裝置中之一複製及貼上剪貼簿的資訊)轉遞至該伴隨電子裝置。The described embodiment transfers an activity from a source electronic device to a companion electronic device. The source electronic device receives activity information describing an activity executed in a first application at the source electronic device and broadcasts an activity announcement that includes an activity identifier for the activity. After receiving the event announcement, the companion electronic device determines whether a second application associated with the first application is available at the companion electronic device. If the second application is available, the companion electronic device obtains extended activity data from the source electronic device and uses the extended activity data to configure the second application and start the second application at the companion electronic device The program performs the activity. The source electronic device may also forward information related to the activity (for example, information copied and pasted from one of the source electronic devices to the accompanying electronic device).
Description
所揭示實施例係關於電子裝置。更特定言之,所揭示實施例係關於將與活動相關之資訊從源電子裝置轉遞至伴隨電子裝置。The disclosed embodiments relate to electronic devices. More specifically, the disclosed embodiments relate to the transfer of information related to activities from a source electronic device to a companion electronic device.
電腦技術之最新發展已使製造商能夠生產各種外觀尺寸之大功率計算裝置,藉此使得使用者能夠使用如智慧型電話或平板電腦之小且可攜帶的裝置以執行從前需要桌上型或膝上型電腦的任務。由於此等發展,使用者常常擁有並使用多個計算裝置,例如在道路上時之智慧型電話、在會議時之平板電腦及在桌子處的膝上型電腦或桌上型電腦。 儘管使用者可擁有每一者具有強大計算能力之不同裝置,但在某些情況下,使用者可發現他或她自己使用不適合於正被執行的任務或不適合於使用者所處情境的裝置。舉例而言,使用者可在諸如具有小顯示螢幕之智慧型電話的裝置上開始預期較短之電子郵件,且接著在電子郵件結果是比預期的更長時,歸因於顯示螢幕之大小,可能在電子郵件中輸入及編輯文字有困難。替代地,使用者可在桌上型電腦上閱讀網頁或觀看電影但可能必須離開桌上型電腦所位於的房間。儘管使用者可擷取另一裝置並開始任務,但此係繁瑣的。The latest developments in computer technology have enabled manufacturers to produce high-power computing devices of various appearance sizes, thereby enabling users to use small and portable devices such as smartphones or tablets to perform desktop or laptop-type devices that previously required The task of the supercomputer. As a result of these developments, users often own and use multiple computing devices, such as smart phones while on the road, tablet computers during meetings, and laptop or desktop computers at the table. Although the user may have different devices each with powerful computing power, in some cases, the user may find that he or she uses a device that is not suitable for the task being performed or the user's situation. For example, a user may start to expect a shorter email on a device such as a smart phone with a small display screen, and then attributable to the size of the display screen when the email result is longer than expected, It may be difficult to enter and edit text in emails. Alternatively, the user may read a web page or watch a movie on the desktop computer but may have to leave the room where the desktop computer is located. Although the user can capture another device and start the task, this is cumbersome.
相關申請案 本申請案為申請中之美國專利申請案第14/586,566號的部分接續申請案,且特此主張該案之優先權,美國專利申請案第14/586,566號標題為「Activity Continuation between Electronic Devices」,該案係在2014年12月30日申請。本申請案亦主張現在到期的美國臨時專利申請案第62/005,781號之優先權,該案標題為「Activity Continuation between Electronic Devices」,其係在2014年5月30日申請,且原申請案14/586,566亦主張其優先權。此等兩申請案以引用的方式併入。 本申請案係關於由發明人Marc J. Krochmal, Christopher S. Linn, John J. Iarocci, Geoffrey Stahl及Jacques P. Gasselin de Richebourg在與本申請案相同之日申請的申請中之美國專利申請案第14/586,511號,該案標題為「Companion Application for Activity Cooperation」,該案具有代理人案號APL-P23129US1。本申請案亦係關於由發明人Craig P. Dooley, Akshay Mangalam Srivatsa, Anjali S. Sandesara及Michael J. Giles在2014年9月2日申請的申請中之美國專利申請案第14/475,329號,該案標題為「Operating Mode Transitions based on Advertising Information」,該案具有代理人案號APL-P22643US1。本申請案亦係關於由發明人Jason C. Conn, Akshay Mangalam Srivatsa, Craig P. Dooley及Michael J. Giles在2014年9月2日申請的申請中之美國專利申請案第14/474,466號,該案標題為「Predefined Wireless Pairing」,該案具有代理人案號APL-P22642US1。本申請案進一步係關於由發明人Christopher S. Linn, Keith Stattenfield, Christopher C. Jensen, Alexander R. Ledwith, David A. Carter, Marc J. Krochmal, John J. Iarocci及Jonathan M. Grynspan在2014年12月30日申請的申請中之美國專利申請案第14/586,566號,該案標題為「Activity Continuation between Electronic Devices」,該案具有代理人案號APL-P22791US1。上文所描述之申請案中的每一者以引用的方式併入本文中。 呈現以下描述以使任何熟習此項技術者能夠製造並使用所描述實施例,且在特定應用及其要求之背景下提供以下描述。熟習此項技術者將易於瞭解對所描述實施例的各種修改,且在不背離所描述實施例之精神及範疇的情況下,本文所定義之一般原理可應用於其他實施例及應用。因此,所描述實施例不限於所展示實施例,但旨在符合與本文中所揭示之原理及特徵一致的最廣範疇。 在一些實施例中,電子裝置(例如圖1中之電子裝置100及/或其某一部分)使用儲存於電腦可讀儲存媒體上的程式碼及/或資料以執行本文中所描述操作中的一些或全部。更特定言之,電子裝置從電腦可讀儲存媒體中讀取程式碼及/或資料並在執行所描述操作時執行程式碼及/或使用資料。在此等實施例中,電腦可讀儲存媒體可為儲存供電子裝置使用之程式碼及/或資料的任何裝置或媒體或其組合。舉例而言,電腦可讀儲存媒體可包括(但不限於)揮發性記憶體或非揮發性記憶體,諸如半導體記憶體(例如,快閃記憶體、隨機存取記憶體(eDRAM、RAM、SRAM、DRAM、DDR、DDR2/DDR3/DDR4 SDRAM等)等)及/或磁性或光學儲存媒體(例如磁碟機、磁帶、CD、DVD)。在所描述實施例中,電腦可讀儲存媒體不包括諸如暫時性信號之非法定電腦可讀儲存媒體。 在一些實施例中,一或多個硬體模組經組態以執行本文中描述之操作。舉例而言,硬體模組可包含(但不限於)一個或多個處理器/核心/中央處理單元(CPU)、特殊應用積體電路(ASIC)晶片、場可程式化閘陣列(FPGA)、快取記憶體/快取記憶體控制器、記憶體管理單元、計算單元、嵌入式處理器、圖形處理器(GPU)/圖形核心、管線及/或其他可程式化邏輯裝置。當此等硬體模組經啟動時,硬體模組執行操作中的一些或全部。在一些實施例中,硬體模組包括藉由執行指令(程式碼、韌體等)而組態以執行操作的一或多個通用電路。 在此描述中,可在描述一些實施例時參考功能區塊。一般而言,功能區塊包括執行所描述操作之一或多個相關聯電路、裝置及/或機構。在一些實施例中,功能區塊中之至少一些包括通用處理電路,其執行使得通用處理電路執行所描述操作之程式碼(例如微碼、韌體、應用程式等)。概述 所描述實施例將在源電子裝置處執行的活動從源電子裝置轉移至伴隨電子裝置--被稱作在伴隨電子裝置中「繼續」該活動的處理程序。在所描述實施例中,為執行轉移,源電子裝置發送描述在源電子裝置處之第一應用程式中執行之活動的資訊至伴隨電子裝置。伴隨電子裝置接著使用資訊中的一些或全部以組態伴隨電子裝置處之第二應用程式以執行對應活動。一般而言,活動包括至少部分在源電子裝置處執行的一或多個操作,該一或多個操作經轉移至伴隨電子裝置/在伴隨電子裝置上繼續。活動之實例包括閱讀及/或編輯文件(例如文字處理文件、試算表、演示文稿或其他類型文件),編寫電子郵件訊息、電子郵件、語音訊息或視訊,起草便箋,存取(瀏覽)網站,觀看電影,播放音訊檔案,或以其他方式使用應用程式或app以執行對應操作。 在一些實施例中,當將活動從源裝置轉移至伴隨裝置時,源電子裝置首先使用無線網路介面(例如藍芽低能量(BLE)、紫蜂等)廣播活動公告訊息(亦稱作「活動公告」)。在一些實施例中,源電子裝置產生用於在源電子裝置處之第一應用程式中執行的活動之活動識別符且將活動識別符包括於活動公告訊息中。源電子裝置藉由使用描述從第一應用程式接收之活動的活動資訊執行一組操作(例如雜湊操作等)產生活動識別符。下文參看圖11更詳細地描述活動資訊的實例。 伴隨電子裝置在網路介面上針對活動公告訊息監視網路(例如藍芽低能量網路),該網路介面對應於活動公告從其中廣播的源電子裝置中之網路介面。在偵測到從源電子裝置廣播的活動公告後,伴隨電子裝置比較用於在伴隨電子裝置處可用的活動之活動識別符與活動公告訊息中之活動識別符。伴隨電子裝置使用此比較以判定可執行對應於在第一應用程式中執行的活動之活動的第二應用程式是否在伴隨電子裝置處可用。 在一些實施例中,在判定第二應用程式可用後,伴隨電子裝置經由通信頻道(例如使用用以接收活動公告訊息的相同無線網路介面或不同網路介面(無線及/或有線))建立與源電子裝置的通信。伴隨電子裝置接著使用通信頻道向源電子裝置請求用於在第一應用程式中執行的活動之延展活動資料。在一些實施例中,在接收到對於延展活動資料之請求後,源電子裝置使用相同(或不同)通信頻道以提供延展活動資料至伴隨電子裝置。一般而言,延展活動資料包括可用以組態伴隨電子裝置中之第二應用程式以繼續活動的資訊,諸如與在第一應用程式中執行的活動相關的文件識別符、捲動位置、統一資源定位符(URL)等。 在一些實施例中,伴隨電子裝置使用活動識別符及/或延展活動資料來組態第二應用程式以執行對應於在源電子裝置處之第一應用程式中執行之活動的活動。接著,伴隨電子裝置開始在伴隨電子裝置處之第二應用程式中執行活動。舉例而言,在伴隨電子裝置組態第二應用程式之後,使用者可使用伴隨電子裝置以繼續對使用者在源電子裝置處工作的文件的工作,繼續觀看使用者在源電子裝置處觀看的電影,繼續瀏覽使用者在源電子裝置處瀏覽的網頁,等等。在一些實施例中,伴隨電子裝置發送通知給源電子裝置以指示活動被轉移至第二應用程式。通知可使得源電子裝置及/或第一應用程式執行內務任務,諸如刪除活動之文件草案、關閉活動之開啟文件,等等。 在一些實施例中,除上文所描述之活動識別符及/或延展活動資料以外,源電子裝置將與活動相關之資訊轉遞至伴隨電子裝置。舉例而言,在一些實施例中,源電子裝置將源電子裝置中之複製及貼上剪貼簿(或「剪貼簿」)之內容中的一些或全部轉遞至伴隨電子裝置。在接收到與活動相關之資訊後,伴隨電子裝置提供與活動相關之資訊以用於在伴隨電子裝置中執行活動(例如所轉移活動或其他活動)。舉例而言,在從源電子裝置轉遞剪貼簿之內容中的一些或全部的實施例中,伴隨電子裝置可使用從源電子裝置接收之剪貼簿的內容覆寫伴隨電子裝置中的剪貼簿之現有內容中的一些或全部。以此方式,伴隨電子裝置可使來自源電子裝置之剪貼簿的內容(亦即與活動相關之資訊)可用於伴隨電子裝置中之活動。舉例而言,可經由伴隨電子裝置之剪貼簿使經複製至(或以其他方式置放於)源電子裝置中之剪貼簿(上)的文字、影像、視訊、聲音、檔案、欄位及/或其他資訊可用於伴隨電子裝置中之活動。 藉由在伴隨電子裝置處執行上文所描述操作以繼續在源電子裝置處執行的活動,所描述實施例使得使用者能夠順暢地且在沒有複雜使用者干預情況下繼續任務。此使得使用者能夠更容易地在所要電子裝置上執行任務,此可改良具有兩個或大於兩個電子裝置之使用者的整體體驗。電子裝置 圖1呈現說明根據一些實施例之電子裝置100的方塊圖。電子裝置100包括處理子系統102、記憶體子系統104、網路連接子系統106及顯示子系統108。 處理子系統102為在電子裝置100中執行計算操作的功能區塊。處理子系統102包括一或多個中央處理單元(CPU)/CPU核心、圖形處理單元(GPU)/GPU核心、嵌入式處理器、特殊應用積體電路(ASIC)及/或其他計算機構。 記憶體子系統104為儲存資料及/或指令以供電子裝置100中之其他功能區塊(例如處理子系統102等)使用的功能區塊。記憶體子系統104包括諸如動態隨機存取記憶體(DRAM)、靜態隨機存取記憶體(SRAM)及/或其他類型之記憶體的用於儲存指令及資料之揮發性記憶體電路,以及用於控制記憶體電路之機構。在一些實施例中,記憶體子系統104包括具有耦接至記憶電路之一或多個快取記憶體的記憶體階層。在此等實施例中之一些中,處理子系統102亦包括為記憶體階層之部分的一或多個快取記憶體。 在一些實施例中,記憶體子系統104耦接至一或多個非揮發性高容量大量儲存裝置(未圖示)。舉例而言,記憶體子系統104可耦接至磁碟機或光碟機、固態驅動器或另一類型之大容量儲存裝置。在此等實施例中,記憶體子系統104可由電子裝置100用作常常使用之資料的快速存取儲存器,而大量儲存裝置用以儲存較不頻繁使用之資料。 網路連接子系統106為包括經組態以耦接至有線及/或無線網路並在有線及/或無線網路上通信(亦即,以執行網路操作)之一或多個裝置的功能區塊。舉例而言,網路連接子系統106可包括BluetoothTM 網路連接系統、蜂巢式網路連接系統(例如,諸如UMTS、LTE等之3G/4G網路)、通用串列匯流排(USB)網路連接系統、基於在IEEE 802.11、802.15等中描述之標準的網路連接系統(例如紫蜂或Wi-Fi網路連接系統,等)、乙太網路網路連接系統及/或另一網路連接系統。網路連接子系統106包括處理器、控制器、無線電/天線、插口/插頭,及/或用於耦接至每一所支援網路連接系統、在每一所支援網路連接系統上通信並處置用於每一所支援網路連接系統之資料及事件的其他裝置。在以下描述中,每一網路系統之用於耦接至網路、在網路上通信及處置網路上之資料及事件的機構共同地稱作網路系統之「介面」或「網路介面」。 顯示子系統108為包括經組態以在電子裝置100之視覺介面上顯示資訊的一或多個裝置之功能區塊。舉例而言,在一些實施例中,顯示子系統108包括圖形處理器(GPU)、圖形卡及/或用於顯示資訊的顯示螢幕。 在一些實施例中,通信路徑(包括一或多個匯流排、導線及/或連接)耦接於電子裝置100中之功能區塊(處理子系統102、記憶體子系統104等)之間,如由元件之間的箭頭線所示。通信路徑用以在元件之間傳輸命令、資料、事件通知及/或其他資訊。 儘管特定組件用以描述電子裝置100,但在一些實施例中,不同組件及/或子系統可存在於電子裝置100中。舉例而言,電子裝置100可包括一或多個額外處理子系統102、記憶體子系統104,等等。另外,子系統中之一或多者可不存在於電子裝置100中或子系統之功能中的一些或全部可併入於其他子系統中。此外,在一些實施例中,電子裝置100可包括未展示於圖1中的一或多個額外子系統。舉例而言,電子裝置100可包括(但不限於)資料收集子系統、音訊及/或視訊子系統、警報子系統、媒體處理子系統及/或輸入/輸出(I/O)子系統。 電子裝置100可為執行計算操作之任何裝置或可包括於其中。舉例而言,電子裝置100可為以下各者或可包括於其中:桌上型電腦、膝上型電腦、可穿戴計算裝置、平板電腦、智慧型電話、伺服器、網路電氣設備、玩具、音訊視覺設備(例如接收器、機上盒、Apple TV等)、汽車(例如汽車介面系統、導航系統、抬頭顯示器等)、家用電氣設備、控制器等及/或其組合。(Apple TV為加利福尼亞庫珀蒂諾之蘋果公司(Apple Inc.)的註冊商標)。網路環境 圖2呈現說明根據一些實施例之網路環境的方塊圖。如圖2中可見,網路環境200包括源電子裝置202、伴隨電子裝置204及第二源電子裝置206(共同地稱作「電子裝置」)。在一些實施例中,該等電子裝置中之每一者為類似於電子裝置100之電子裝置,亦即具有類似於電子裝置100之子系統。然而,此並不需要;所描述實施例可使用可執行本文中所描述操作之任何電子裝置。 源電子裝置202及第二源電子裝置206為參與與關於活動轉移操作之伴隨電子裝置204的通信之交換的電子裝置。在一些實施例中,源電子裝置202(及/或第二源電子裝置206)為由伴隨電子裝置204識別且因此經允許參與活動轉移操作的電子裝置。舉例而言,源電子裝置202及伴隨電子裝置204兩者可能已使用相同帳戶向服務提供者註冊且因此可經由儲存於每一電子裝置中之資訊辨識彼此。舉例而言,在一些實施例中,源電子裝置202及伴隨電子裝置204參與預先配對操作(例如預定義配對)(且經由藉由預先配對操作獲取的資訊辨識彼此),如由發明人Jason C. Conn, Akshay Mangalam Srivatsa, Craig P. Dooley及Michael Giles在與本申請案相同之日申請的申請中之美國專利申請案第xx/xxx,xxx號中所描述,該案標題為「Predefined Wireless Pairing」,該案具有代理人案號APL-P22642USP1,且其內容如上文所描述以引用的方式併入。在一些實施例中,源電子裝置202及伴隨電子裝置204可參與識別因素(加密密鑰、憑證等)之裝置至裝置交換使得源電子裝置202及伴隨電子裝置204隨後辨識彼此。 在網路環境200內,伴隨電子裝置204可使用無線通信信號208(使用圖2中標記為「通信信號208」的鋸齒狀線說明)與源電子裝置202及第二源電子裝置206通信。在一些實施例中,通信信號208係根據對應無線協定(例如,經由諸如藍芽、紫蜂、基於802.11之協定之無線網路協定及/或其他無線網路協定)而格式化並交換(廣播、傳輸/接收,等)。在一些實施例中,通信信號208中的一些或全部係作為有線通信信號(例如有線乙太網路、有線LAN、有線WAN等中之信號)而傳輸。 在一些實施例中,本文中所描述的活動轉移操作依賴於源電子裝置202及伴隨電子裝置204彼此充分接近以使得藉由每一電子裝置發送的通信信號208(及因此併入之訊息)能夠由另一電子裝置接收。換言之,源電子裝置202及伴隨電子裝置204彼此「接近」,藉此使得能夠在電子裝置之間進行訊息交換。如本文中所使用的「接近」因此表示自給定電子裝置廣播/發送的訊息可由一或多個其他電子裝置接收的距離。此距離係由電子裝置中之無線電設備(天線、接收器/傳輸器等)及用以廣播/發送訊息之特定無線電協定/信號而指定,由諸如環境條件(電磁干擾等)、中間物件(傢俱、壁、衣服/袋等)等之因素限制。舉例而言,在一些實施例中,通信信號208係使用預期範圍為30米的協定在源電子裝置202與伴隨電子裝置204之間交換,且因此該等裝置在裝置在彼此30米內時係「接近」(然而,注意預期範圍可被上文所描述之因素顯著改變)。 圖16呈現說明根據一些實施例之彼此接近之電子裝置的方塊圖。如圖16中可見,伴隨電子裝置204係在源電子裝置202的無線電信號(例如通信信號208)之範圍1602內,意謂伴隨電子裝置204可接收從源電子裝置202發送的無線電信號。另外,源電子裝置202係在伴隨電子裝置204的無線電信號(例如通信信號208)之範圍1604內,意謂源電子裝置202可接收從伴隨電子裝置204發送的無線電信號。因此,如上文所描述,源電子裝置202及伴隨電子裝置204係彼此「接近」,藉此實現本文中描述的訊息之通信(及對應操作)。然而,源電子裝置202與伴隨電子裝置204都不在電子裝置1600的無線電信號之範圍1606內,意謂源電子裝置202與伴隨電子裝置204都不與電子裝置1600接近。應注意圖16中之範圍1602至1606係使用不規則形狀展示,藉此說明來自電子裝置之無線電信號具有不規則範圍,此視電子裝置(天線配置等)、上文所描述之因素等而定。 在一些實施例中,在電子裝置之間傳達的訊息、資料等經加密。在此等實施例中,電子裝置中的一些或全部例如藉由使用共用密鑰、自共用密鑰獲得的密鑰及/或一次性密鑰執行對應加密及解密操作。舉例而言,如前所述,在一些實施例中,源電子裝置202及伴隨電子裝置204參與如由發明人Jason C. Conn, Akshay Mangalam Srivatsa, Craig P. Dooley及Michael Giles在與本申請案相同之日申請的申請中之美國專利申請案第xx/xxx,xxx號中所描述的預定義配對,該案標題為「Predefined Wireless Pairing」,該案具有代理人案號APL-P22642USP1,且該案之內容如上文所描述以引用的方式併入。在一些實施例中,源電子裝置202及伴隨電子裝置204藉由使用源電子裝置202及伴隨電子裝置204在參與預定義配對的同時獲取的一或多個加密密鑰來加密並解密針對活動轉移操作交換的訊息。 儘管各種電子裝置展示於圖2中,但在一些實施例中,電子裝置之不同配置用以執行本文中所描述操作中的一些或全部。舉例而言,在一些實施例中,第二源電子裝置206並不存在。一般而言,所描述實施例包括用以如本文所描述在電子裝置之間移轉活動的充足裝置。廣播活動公告訊息 圖3呈現說明根據一些實施例之用於廣播活動公告訊息之處理程序的流程圖。更特定言之,在圖3中展示之處理程序期間,諸如源電子裝置202之電子裝置廣播活動公告訊息。應注意圖3中展示之操作呈現為藉由一些實施例執行的操作之一般實例。藉由一些實施例執行的操作包括不同操作及/或以不同次序執行的操作。另外,儘管某些機構用於描述操作(例如源電子裝置202等),但在一些實施例中,其他機構執行操作。舉例而言,伴隨電子裝置204及第二源電子裝置206中之一者或兩者可執行類似操作以廣播自身之活動公告訊息。 圖3中展示的處理程序開始於源電子裝置202接收描述在源電子裝置202處之第一應用程式(亦即,安裝在源電子裝置202上/可用於源電子裝置202處的第一應用程式)中執行之活動的活動資訊(步驟300)。(下文參看圖11更詳細地描述活動資訊的實例)。在一些實施例中,第一應用程式提供或報告活動資訊至源電子裝置202,例如提供或報告活動資訊至作業系統、精靈協助程式或源電子裝置202處之其他處理程序及/或服務。在一些實施例中,源電子裝置202針對活動資訊查詢第一應用程式。一般而言,活動資訊包括描述至少部分使用電子裝置執行的活動之資訊。活動之實例包括閱讀及/或編輯文件(例如文字處理文件、試算表、演示文稿或其他類型之文件),編寫電子郵件訊息,起草便箋,存取(瀏覽)網站,觀看電影,播放音訊檔案,或以其他方式使用應用程式或app以執行對應操作。 接下來,源電子裝置202判定是否篩選接收之活動資訊(步驟302),其包括使用一或多個準則來丟棄不應經歷另外處理及/或不應在活動公告訊息中廣播的活動資訊。舉例而言,源電子裝置202可量測第一應用程式提供更新至活動資訊的頻率,且可在活動資訊經更新的頻率超過臨限值時丟棄來自第一應用程式之活動資訊(其可被稱為「節流」來自第一應用程式之活動資訊)。作為另一實例,源電子裝置202可丟棄複製或重複、不含有先前所報告活動資訊之顯著變化(例如「未改變」的自動報告、簡單/基本操作/變化之報告,等)、報告已由源電子裝置202知曉的事實,等的活動資訊。作為又一個實例,在一些實施例中,源電子裝置202基於由活動資訊描述之活動不欲被公告的指示而篩選活動資訊。舉例而言,在一些實施例中,源電子裝置202及/或源電子裝置202之使用者可將某些活動及/或某些種類之活動組態為不欲被公告的活動。作為又一個實例,在一些實施例中,源電子裝置202排序一些或所有活動(該等活動之活動資訊存在)(亦即,可公告的活動中的一些或全部)並基於該排序丟棄此等活動中之一或多者。舉例而言,源電子裝置202可指派較高排序至使用者先前繼續的活動並指派較低排序至使用者先前未繼續的活動。在此等實施例中之一些中,源電子裝置202使用來自伴隨電子裝置204之訊息以判定哪些公告活動係先前繼續且哪些公告活動係先前未繼續,例如,諸如下文參看圖5步驟510所描述之彼等訊息的訊息。 若源電子裝置202篩選(例如丟棄)活動資訊(步驟302,是),則處理程序結束。否則,若源電子裝置202不篩選活動資訊(步驟302,否),則源電子裝置202將活動資訊中的一些或全部儲存於結構中(步驟304)。出於說明之目的,吾人描述將活動資訊儲存於表中之輸入項目中的實施例,吾人將該表稱為「公告之活動」表。然而,應注意實施例不限於使用用於儲存活動資訊之表。一些實施例使用用於儲存活動資訊之不同儲存機構/結構,諸如關聯陣列、內容可定址記憶體等。 在一些實施例中,在儲存活動資訊的同時,源電子裝置202覆寫及/或移除先前儲存於公告之活動表中的活動資訊。舉例而言,源電子裝置202可使用最近最少使用(LRU)演算法來覆寫及/或移除來自公告之活動表的輸入項目。下文參看圖12更詳細地描述公告之活動表的實例。 接下來,源電子裝置202判定用於活動資訊之活動識別符(步驟306)。一般而言,活動識別符包括來自識別第一應用程式及在第一應用程式中執行之活動的活動資訊之資訊。在一些實施例中,源電子裝置202藉由將活動資訊減少成與完整活動資訊相比可更有效廣播的較小經編碼表示而產生活動識別符。在此等實施例中之一些中,經編碼表示為活動資訊之雜湊,亦即其輸入包含活動資訊的雜湊函數(例如,MD4、MD5、SHA、MurmurHash等)之輸出。在一些實施例中,源電子裝置202將活動識別符連同活動資訊儲存於公告之活動表(或源電子裝置202用以儲存活動資訊的任何的結構)中。下文參看圖12更詳細地描述活動識別符的實例。 在一些實施例中,活動識別符包含網域名稱之表示。舉例而言,在一些實施例中,當在第一應用程式中執行的活動包括使用在網域處之資源時,活動資訊包含網域之網域名稱,例如統一資源定位符(URL)之至少一部分。在一些實施例中,源電子裝置202藉由在活動識別符中包括網域名稱中之一些或全部而判定活動識別符。舉例而言,活動識別符可為用於資源的URL之一些或全部的雜湊。 在一些實施例中,活動識別符識別源電子裝置202儲存活動資訊(例如,如上文參考步驟304所描述)的結構中之輸入項目。舉例而言,活動識別符可識別源電子裝置202儲存活動資訊的公告之活動表中的輸入項目。活動識別符亦可包括公告之活動表自身的識別符。在一些實施例中,為識別源電子裝置202儲存活動資訊的結構中之輸入項目,活動識別符包括:(1)公告之活動表中的資料之雜湊,其用以識別公告之活動表,及(2)儲存活動資訊的公告之活動表中的輸入項目之索引。 源電子裝置202接下來將活動識別符包括至活動公告訊息中(步驟308)。在一些實施例中,除活動識別符以外,活動公告訊息亦包括其他資料。舉例而言,在一些實施例中,活動公告訊息包括用以指示活動識別符何時包括與活動相關的線上資源之網域名稱之表示的旗標。在此等實施例中,源電子裝置202確證旗標(例如,將旗標設定成諸如1之預定值)以指示活動識別符包括網域名稱之表示。在一些實施例中,源電子裝置202確證活動公告訊息中之旗標以指示公告活動可以源電子裝置202將單獨地提供至伴隨電子裝置204的方式(例如藉由源電子裝置202將對應指令包括於延展活動資料(下文更詳細地描述延展活動資料)中)繼續。 在一些實施例中,活動公告訊息包括用於活動/活動資訊之時戳。時戳(其可表示絕對時間或相對時間)可指示在第一應用程式中最後執行活動的時間,例如編輯文件、存取網站、觀看電影等的最後時間。在一些實施例中,時戳獨立於活動/活動資訊,亦即時戳指示使用者與源電子裝置202最後互動的時間,而不管使用者之最後互動是否包括使用者執行活動。 源電子裝置202接著廣播活動公告訊息(步驟310)。舉例而言,源電子裝置202可使用通信信號208廣播活動公告訊息。在一些實施例中,源電子裝置202在網路環境200中廣播/公告活動公告訊息使得網路環境200中之附近裝置可接收活動公告訊息。舉例而言,在此等實施例中,源電子裝置202使用諸如藍芽低能量(BLE)之BluetoothTM 通信頻道以廣播活動公告訊息。一些實施例可在不同通信頻道(諸如,同級間網路、LAN、網際網路等)上廣播活動公告訊息。應注意活動廣播可發生多於一次,例如源電子裝置202可多次及/或週期性地廣播相同活動公告訊息。建置可用活動表 在一些實施例中,伴隨電子裝置204儲存可用活動資訊,例如描述在伴隨電子裝置204處可用的活動之活動資訊(下文參看圖11更詳細地描述活動資訊之實例)。舉例而言,在一些實施例中,伴隨電子裝置204儲存用於可用活動資訊之活動識別符。出於說明之目的,吾人描述將可用活動資訊儲存於表中的伴隨電子裝置204,吾人將該表稱為「可用活動」表(稍後在本發明中更詳細地描述可用活動表之實例)。應注意,儘管吾人描述將可用活動資訊儲存於可用活動表中的實施例,但實施例不限於使用表儲存可用活動資訊。一些實施例可使用用於儲存可用活動資訊之其他結構,諸如關聯陣列、內容可定址記憶體等。 圖4呈現說明根據一些實施例之用於將描述在伴隨電子裝置204處可用的活動之活動資訊儲存至可用活動表中之處理程序的流程圖。應注意圖4中展示之操作呈現為藉由一些實施例執行的操作之一般實例。藉由一些實施例執行的操作包括不同操作及/或以不同次序執行的操作。另外,儘管某些機構用於描述操作(例如伴隨電子裝置204等),但在一些實施例中,其他機構執行操作。舉例而言,源電子裝置202及第二源電子裝置206中之一者或兩者可執行類似操作以儲存描述可供用於自身之活動的可用活動資訊。 圖4中展示的處理程序開始於伴隨電子裝置204接收描述在伴隨電子裝置204處之第二應用程式處可用的活動之活動資訊(例如,描述可在伴隨電子裝置204處執行之活動的活動資訊)(步驟400)。一般而言,此活動資訊描述可在伴隨電子裝置204處之第二應用程式中執行的活動,亦即在伴隨電子裝置204處之第二應用程式能夠執行的操作或功能。在一些實施例中,當安裝及/或使用第二應用程式時,第二應用程式報告/提供活動資訊。在一些實施例中,伴隨電子裝置204查詢或以其他方式監視第二應用程式以收集描述在第二應用程式處可用的活動之活動資訊。在一些實施例中,活動資訊包括用於尚未在伴隨電子裝置204上執行但可用於執行之活動的活動資訊(例如,當第二應用程式在伴隨電子裝置204處被安裝/更新、啟動、使用等時由第二應用程式報告的活動資訊)。 接下來,伴隨電子裝置204判定第二活動識別符(亦即,用於描述在第二應用程式處可用的活動之活動資訊的活動識別符)(步驟402)。一般而言,第二活動識別符識別第二應用程式及在第二應用程式處可用的活動。第二活動識別符可為描述在第二應用程式處可用的活動之活動資訊之經編碼表示。在一些實施例中,伴隨電子裝置204藉由執行源電子裝置202執行以產生用於在第一應用程式中執行之活動的活動識別符(參見圖3,步驟306)的相同操作中之一些或全部而判定第二活動識別符。舉例而言,在一些實施例中,伴隨電子裝置204使用相同雜湊函數以產生源電子裝置202用以產生用於在第一應用程式中執行的活動之活動識別符的第二活動識別符。 在一些實施例中,當第二應用程式可執行包括存取網域處之資源的活動時,用於此活動的活動資訊包括網域之網域名稱。在此等實施例中之一些中,第二活動識別符為網域名稱之經編碼表示,其使得第二應用程式能夠「主張」網域名稱,亦即聲明第二應用程式可使用網域名稱處之資源使得伴隨電子裝置204可將對應活動轉移至第二應用程式。舉例而言,如稍後將描述,在其中第二應用程式串流傳輸來自網際網路上之特定站點的電影之情形中,第二活動識別符可為該站點之網域名稱之至少一些部分的經編碼表示。應注意第二應用程式可不同於第一應用程式(亦即其活動在活動公告訊息中公告的應用程式),使得不同於第一應用程式之應用程式能夠在伴隨電子裝置204處繼續活動。 接下來,伴隨電子裝置204將第二活動識別符儲存至可用活動表中(步驟404)。請求延展活動資料及轉移活動 在一些實施例中,在接收到活動公告訊息後,電子裝置可請求用於所公告活動之延展活動資料使得所公告活動可隨後被轉移至電子裝置。圖5呈現說明根據一些實施例之用於請求延展活動資料並轉移活動的處理程序之流程圖。更特定言之,在圖5中展示之處理程序期間,伴隨電子裝置204向源電子裝置202請求用於在源電子裝置202中之第一應用程式中執行之活動的延展活動資料。應注意圖5中展示之操作被呈現為藉由一些實施例執行的操作之一般實例。藉由一些實施例執行的操作包括不同操作及/或以不同次序執行的操作。另外,儘管某些機構用於描述操作(例如源電子裝置202、伴隨電子裝置204),但在一些實施例中,其他電子裝置及/或機構執行操作。 圖5中展示之處理程序開始於伴隨電子裝置204接收活動公告訊息(步驟500),例如從源電子裝置202廣播的活動公告訊息(參見圖3,步驟310)。接下來,伴隨電子裝置204判定伴隨電子裝置204是否在接收狀態中(步驟502)。一般而言,伴隨電子裝置204當其可供用於執行活動轉移時係在接收狀態中。舉例而言,在一些實施例中,伴隨電子裝置204當裝置「喚醒」時(例如在使用者按壓按鈕以喚醒裝置之後顯示鎖定螢幕時)移轉至接收狀態。在一些實施例中,伴隨電子裝置204當伴隨電子裝置204在使用中時(例如當使用者正使用伴隨電子裝置204處之應用程式時及/或當使用者已在給定時間段內使用應用程式時)並不在接收狀態中。 若伴隨電子裝置204並不在接收狀態中(步驟502,否),則處理程序結束(亦即,活動公告訊息被忽略)。否則,若伴隨電子裝置204在接收狀態中(步驟502,是),則伴隨電子裝置204判定與第一應用程式相關聯的第二應用程式是否在伴隨電子裝置204處可用(步驟504)。一般而言,此操作包括判定應用程式是否在伴隨電子裝置204上可用於繼續在來自源電子裝置202之活動公告訊息中描述的活動。稍後參看圖7至圖8更詳細地描述判定第二應用程式是否可用。 若第二應用程式不可用(步驟504,否),則處理程序結束。否則,若第二應用程式可用(步驟504,是),則伴隨電子裝置204擷取用於第二應用程式之活動資訊(步驟506)。舉例而言,如亦將參看圖7至圖8及圖11至圖12更詳細地描述,在判定第二應用程式之後,伴隨電子裝置204可使用用於第二應用程式之活動識別符以從可用活動表(或從伴隨電子裝置204用以儲存可用活動資訊的另一結構)中擷取描述在第二應用程式中可用的活動之活動資訊。在一些實施例中,伴隨電子裝置204使用所擷取活動資訊(例如,使用所擷取活動資訊中之應用程式識別符)以定製活動係可恢復的指示,例如如下文參考步驟508及/或圖14所描述。參看圖11更詳細地描述應用程式識別符。 接下來,伴隨電子裝置204呈現活動係可恢復的指示(步驟508)。舉例而言,伴隨電子裝置204可在伴隨電子裝置204之顯示器中呈現圖形圖示及/或通知。下文參看圖14更詳細地描述指示。 接著,伴隨電子裝置204判定活動轉移是否被接受(步驟510)。在一些實施例中,伴隨電子裝置204之使用者藉由對指示執行動作(諸如在指示上點選、沿一或多個方向拖曳指示及/或至一或多個特定位置,等)接受及/或拒絕活動轉移。舉例而言,為接受活動轉移,使用者可使用手指(在觸控式螢幕顯示器上)輕觸圖示/通知並在第一方向(例如左至右、向上、按圓形順時針方向,等)中拖曳圖示/通知。作為另一實例,為拒絕活動,使用者可使用手指輕觸圖示/通知並在第二方向(例如右至左、向下、按圓形逆時針方向,等)上拖曳圖示/通知。在一些實施例中,伴隨電子裝置204基於超時週期(亦即,藉由判定自呈現指示以來一段時間已過去而沒有使用者執行動作以接受指示/活動轉移)判定活動轉移不被接受。 若活動轉移未被接受(步驟510,否),則處理程序結束。應注意,在一些實施例中,若活動轉移未被接受,則伴隨電子裝置204發送訊息至源電子裝置202以指示活動轉移未被接受。若活動轉移被接受(步驟510,是),則伴隨電子裝置204發送訊息至源電子裝置202以請求用於在第一應用程式中執行的活動的延展活動資料(步驟512)。一般而言,對於延展活動資料之請求包括用以促進源電子裝置202判定正請求延展資料所針對之活動的資訊。舉例而言,在一些實施例中,伴隨電子裝置204包括來自具有對延展活動資料之請求的活動公告訊息之活動識別符。 接下來,在回應於對於延展活動資料之請求而從源電子裝置202接收延展活動資料後,伴隨電子裝置204使用延展活動資料組態第二應用程式(步驟514)。組態第二應用程式可包括啟動/開始第二應用程式,基於延展活動資料設定第二應用程式之狀態(或使得狀態改變),及以其他方式組態第二應用程式以執行對應操作。舉例而言,伴隨電子裝置204可傳遞文件/資源識別符、表示文件/資源之資訊,及/或對延展活動資料中之文件/資源的參考至第二應用程式以使得第二應用程式存取文件/資源(例如,供第二應用程式自定位於網際網路上的基於雲端之儲存器存取的雲端儲存文件的識別符/表示該雲端儲存文件之資訊/對該雲端儲存文件的參考、供第二應用程式自資料庫存取的文件之識別符/表示該文件之資訊/對該文件之參考,等)。在一些實施例中,當活動包括編寫在源電子裝置202處儲存的文件時,延展活動資料包括文件或表示該文件之資訊,藉此使得伴隨電子裝置204及/或第二應用程式能夠在伴隨電子裝置204處使用/再產生文件以用於第二應用程式。在一些實施例中,延展活動資料包括文件中之編輯,例如在文件中進行編輯之位置及/或內容。在一些實施例中,延展活動資料包括位置資訊,諸如媒體檔案中之最後播放/觀看/記錄位置(亦即媒體檔案中之播放或記錄停止或最後執行的位置)、檔案中之標誌的位置、視訊遊戲中之遊戲的位置/狀態(例如玩過的最後關卡、玩家最後所處位置之座標、贏得的得分及/或成就,及/或可用以在伴隨電子裝置204處再產生在源電子裝置202上玩過的遊戲狀態的資訊),等。 接著,伴隨電子裝置204開始在第二應用程式中執行活動(步驟516),其通常包括在伴隨電子裝置204處開始/啟動第二應用程式(若第二應用程式尚未執行)及基於延展活動資料在伴隨電子裝置204處執行第二應用程式。舉例而言,伴隨電子裝置204可使得第二應用程式開始針對與公告活動相關之文件在觀看及/或編輯模式中執行,且可使得第二應用程式捲動至文件中在源電子裝置202處觀看/編輯文件的最後位置。接下來,伴隨電子裝置204發送指示活動被轉移的通知至源電子裝置202(步驟518)。 應注意一些實施例可在延展活動資料正被傳輸的同時或甚至在延展活動資料被請求之前使用活動公告訊息中之資訊(例如活動識別符)開始組態第二應用程式。此等實施例中之一些使用活動公告訊息中之資訊以設定用於第二應用程式之初始背景,設定用於第二應用程式之模式(例如編輯模式、唯讀模式、電子郵件編寫模式、便箋編寫模式等)。因此,一些實施例可在接收到延展活動資料之前(可能一旦活動轉移被接受)啟動及/或組態第二應用程式,藉此藉由以應用程式啟動時間隱藏資料傳送時間而改良在緩慢網路中之效能。 在一些實施例中,伴隨電子裝置204使用不同於通信信號208之信號及/或藉由使用不同於其上接收活動公告訊息之通信頻道/網路介面的通信頻道/網路介面而發送對於延展活動資料之請求。舉例而言,伴隨電子裝置204可經由藍芽鏈路(使用BLE協定)接收活動公告訊息且可經由Wi-Fi鏈路或網際網路請求延展活動資料。在此等實施例中,源電子裝置202及伴隨電子裝置204使用通信信號208(例如藍芽鏈路)以交換使得電子裝置能夠經由不同通信頻道/網路通信的資訊。舉例而言,在此等實施例中之一些中,伴隨電子裝置204建立同級間網路(例如特用Wi-Fi網路)並提供用以存取同級間網路之資訊至源電子裝置202。在一些實施例中,源電子裝置202提供延展活動資料至伺服器且伴隨電子裝置204例如經由網際網路從伺服器接收延展活動資料。基於公告資訊移轉至接收狀態 儘管圖5中吾人描述接收活動公告訊息(圖5,步驟500)及判定伴隨電子裝置204是否在接收狀態中(圖5,步驟502)的實施例,但一些實施例基於所接收活動公告訊息中之資訊移轉至接收狀態。在此等實施例中之一些中,在接收活動公告訊息(例如,如圖5中所示,步驟500)之後,伴隨電子裝置204不判定伴隨電子裝置204是否在接收狀態中,亦即圖5中展示之處理程序自步驟500繼續進行至步驟504而不需執行步驟502之操作。 舉例而言,在一些實施例中,源電子裝置202使用低功率協定(諸如藍芽低能量(BLE)、紫蜂等)以藉由對應通信信號208廣播活動公告訊息。諸如伴隨電子裝置204之裝置可使用對應低功率機構(諸如,對應網路介面內之基頻處理器,例如網路連接子系統106中之基頻處理器)監視從源電子裝置202廣播的活動公告訊息。在此等實施例中之一些中,活動公告訊息之接收係藉由伴隨電子裝置204僅使用伴隨電子裝置204之基頻處理器而處置,其意謂伴隨電子裝置204可另外在空閒狀態中(例如,諸如處理子系統之子系統在低功率狀態中)。舉例而言,在一些實施例中,伴隨電子裝置204可為在使用者口袋中之在空閒狀態中的智慧型電話,在該空閒狀態中基頻處理器監視活動公告訊息同時處理子系統(及通常伴隨電子裝置204)在低功率狀態中。 在一些實施例中,在如此辨識活動公告訊息後,基頻處理器喚醒處理子系統(且可通常將伴隨電子裝置204自空閒操作狀態移轉出至較高功率/更主動操作狀態)以執行後續操作。舉例而言,在一些實施例中,伴隨電子裝置204可監視活動公告訊息並如申請中之美國專利申請案第xx/xxx,xxx號中描述的對活動公告訊息作出反應,該案係藉由發明人Craig P. Dooley, Akshay Mangalam Srivatsa, Anjali S. Sandesara及Michael Giles在與本申請案相同之日申請,該案標題為「Operating Mode Transitions based on Advertising Information」,其具有代理人案號APL-P22643USP1,且其如上文所描述以引用的方式併入。在一些實施例中,伴隨電子裝置204/智慧型電話可不需要從使用者口袋中取出並啟動以將伴隨電子裝置204置於接收狀態中。對針對延展活動資料之請求作出回應 圖6呈現說明根據一些實施例之用於對針對延展活動資料之請求作出回應的處理程序之流程圖。更特定言之,在圖6中展示的處理程序期間,諸如源電子裝置202之電子裝置對來自諸如伴隨電子裝置204之電子裝置的針對延展活動資料之請求作出回應。應注意圖6中展示之操作呈現為藉由一些實施例執行的操作之一般實例。藉由一些實施例執行的操作包括不同操作及/或以不同次序執行的操作。另外,儘管某些機構用於描述操作(例如源電子裝置202、伴隨電子裝置204),但在一些實施例中,其他電子裝置及/或機構執行操作。 圖6中展示之處理程序開始於源電子裝置202接收針對延展活動資料之請求(步驟600),例如,如參考圖5中之步驟512所描述,伴隨電子裝置204傳輸的對延展活動資料之請求。 接下來,源電子裝置202使用針對延展活動資料的請求中之資訊以判定請求係針對第一應用程式之延展活動資料(步驟602)。舉例而言,如前所述,針對延展活動資料之請求可包括來自活動公告訊息之活動識別符(參見圖3中之步驟308)。在一些實施例中,源電子裝置202執行在公告活動表(或其中儲存所公告活動資訊的其他結構;下文參看圖12更詳細地描述公告活動表的實例)中查找活動識別符。當源電子裝置202從活動公告訊息中發現所公告活動表中之包括活動識別符的輸入項目時,源電子裝置202可擷取輸入項目之活動資訊以例如藉由判定輸入項目之應用程式識別符為第一應用程式之應用程式識別符而判定活動識別符對應於第一應用程式,(參看圖11至圖12更詳細地描述活動資訊及應用程式識別符之實例)。 接下來,源電子裝置202視需要發送通知/請求至第一應用程式以執行與活動相關之更新(步驟604)。在一些實施例中,通知使得第一應用程式在提供延展活動資料至伴隨電子裝置204之前更新延展活動資料。舉例而言,第一應用程式可使用通知以更新與活動相關之文件的最後捲動/觀看位置及/或在轉移活動之前執行與活動相關的完成操作,諸如儲存與活動相關之文件、以與活動相關的文件之最近草案更新延展活動資料,等。 接著,源電子裝置202擷取用於第一應用程式之延展活動資料(步驟606)。在一些實施例中,源電子裝置202請求第一應用程式提供延展活動資料。在一些實施例中,第一應用程式提供延展活動連同初始活動資訊中的一些或全部(參見圖3,步驟300)及/或週期性地報告延展活動資訊(例如,每隔N 秒報告,其中N 為諸如1、3等之數字,每當第一應用程式發生事件時(諸如當文件儲存於第一應用程式中,正被觀看之電影在第一應用程式中暫停,等時)報告延展活動資訊)。 接下來,源電子裝置202發送延展活動資料至伴隨電子裝置204(步驟608)。一般而言,延展活動資料包括可用以組態第二應用程式以繼續活動的資訊,諸如識別用於在第一應用程式中執行的活動之文件的文件識別符(及/或表示文件之資訊,諸如對文件之參考)、在第一應用程式中存取/瀏覽的網頁之統一資源位置(URL)(及/或表示網頁/URL之資訊,諸如對網頁/URL之參考)、位置資訊(例如在文件或網頁中之最後觀看/捲動位置、視訊遊戲中之最後玩過的位置等的指示)、在源電子裝置202處及/或在可在網際網路(例如「雲端儲存器」)或公司網路上存取的儲存裝置中儲存的草案文件之複本(及/或表示草案文件之資訊,諸如對草案文件之參考)等。 接著,源電子裝置202接收活動被轉移之通知(步驟610),例如接收如參看圖5步驟518描述由伴隨電子裝置204發送的通知。在一些實施例中,回應於接收到通知,源電子裝置202通知第一應用程式活動被轉移(步驟612)。在一些實施例中,源電子裝置202及/或第一應用程式基於接收到通知執行與活動相關的一或多個操作,例如刪除本端儲存之文件/文件草案、關閉開啟的文件、關閉應用程式等的內務任務。 在一些實施例中,源電子裝置202使用不同於通信信號208之信號,及/或藉由使用不同於其上傳達活動公告訊息及/或針對延展活動資料之請求的通信頻道/網路介面的通信頻道/網路介面提供延展活動資料。舉例而言,源電子裝置202可經由藍芽鏈路接收針對延展活動資料之請求且可經由Wi-Fi鏈路或網際網路提供延展活動資料。使用雲端配對之安全通信 如較早所論述,在一些實施例中,執行活動轉移操作之電子裝置參與預先配對操作,例如「雲端配對」操作,諸如由發明人Jason C. Conn, Akshay Mangalam Srivatsa, Craig P. Dooley及Michael Giles在與本申請案相同之日申請的申請中之美國專利申請案第xx/xxx,xxx號中描述的預定義配對,該案標題為「Predefined Wireless Pairing」,該案具有代理人案號APL-P22642USP1,且該案之內容如上文所描述以引用的方式併入。在一些實施例中,電子裝置使用在雲端配對操作期間獲取的安全性資訊(例如使用在雲端配對操作期間獲取的加密密鑰)加密及解密彼此交換以用於執行活動轉移操作的訊息。 舉例而言,在一些實施例中,源電子裝置202使用在源電子裝置202與伴隨電子裝置204一起執行的雲端配對操作期間獲取的加密密鑰加密活動公告訊息(參見圖3,步驟310)及/或延展活動資料(參見圖6,步驟608)。在一些實施例中,伴隨電子裝置204使用相同安全性資訊、在伴隨電子裝置204與源電子裝置202一起執行的雲端配對操作期間獲取的不同安全性資訊及/或自在雲端配對操作期間獲取之安全性資訊獲得的資訊加密針對延展活動資料之請求(參見圖5,步驟512)及/或活動被轉移的通知(參見圖5,步驟518)。使用活動識別符判定第二應用程式 如前所述,在一些實施例中,電子裝置判定與第一應用程式相關聯的第二應用程式是否在電子裝置中可用(以促進活動至電子裝置之可能轉移)。圖7呈現說明根據一些實施例之用於判定第二應用程式是否在伴隨電子裝置204處可用的處理程序之流程圖。可在圖5中展示之處理程序期間(例如在步驟504處)執行圖7中展示之操作。應注意圖7中展示之操作呈現為藉由一些實施例執行的操作之一般實例。藉由一些實施例執行的操作包括不同操作及/或以不同次序執行的操作。另外,儘管某些機構用於描述操作(例如伴隨電子裝置204等),但在一些實施例中,其他機構執行操作。舉例而言,源電子裝置202及第二源電子裝置206中之一者或兩者可執行類似操作以自身判定第二應用程式是否可用。 圖7中展示之處理程序開始於伴隨電子裝置204判定活動公告訊息中之旗標是否被確證(步驟700)。如前所述,在一些實施例中,源電子裝置202確證活動公告訊息中之旗標以指示活動識別符為/包含用於所公告活動的網域名稱之表示。在此等實施例中之一些中,伴隨電子裝置204藉由判定旗標被確證而判定活動公告訊息包含網域名稱之表示。稍後在本說明書中例如參看圖11及圖13更詳細地描述旗標。 若活動公告訊息中之旗標被確證(步驟700,是),則伴隨電子裝置204處理旗標(步驟702)。稍後參看圖8描述在步驟702處發生的旗標之處理。一些實施例針對活動公告訊息中之每一確證旗標重覆步驟702(亦即,參考圖8描述之處理),例如當活動公告訊息包含兩個或大於兩個確證旗標時重覆用於每一確證旗標的處理。 若活動公告訊息不包含被確證之旗標(步驟700,否),則伴隨電子裝置204比較來自活動公告訊息之活動識別符與用於在伴隨電子裝置204處可用的活動之活動識別符(步驟704)。舉例而言,伴隨電子裝置204可在伴隨電子裝置204處的可用活動表(或其中伴隨電子裝置204儲存可用活動資訊的其他結構,如前參看圖4所描述)中之活動識別符中查找來自活動公告訊息之活動識別符。 若查找活動識別符發現可用活動表中之輸入項目中的匹配(步驟706,是),則伴隨電子裝置204判定第二應用程式為其活動識別符儲存於彼輸入項目中的應用程式(步驟708)。 若查找活動識別符未發現可用的活動資訊中之匹配(步驟706,否),則伴隨電子裝置204判定與第一應用程式相關聯的應用程式在伴隨電子裝置204處不可用(步驟710)。使用旗標判定第二應用程式 如前所述,一些實施例確證活動公告訊息中之旗標。圖8呈現說明根據一些實施例之用於使用旗標判定第二應用程式的處理程序之流程圖。更特定言之,圖8呈現說明伴隨電子裝置204在圖7之步驟702處執行的處理程序之流程圖。應注意圖8中展示之操作被呈現為藉由一些實施例執行的操作之一般實例。藉由一些實施例執行的操作包括不同操作及/或以不同次序執行的操作。另外,儘管某些機構用於描述操作(例如伴隨電子裝置204等),但在一些實施例中,其他機構執行操作。舉例而言,源電子裝置202及第二源電子裝置206中之一者或兩者可自身執行類似操作。 圖8中展示之處理程序開始於伴隨電子裝置204判定對應於旗標之應用程式(步驟800)。在一些實施例中,伴隨電子裝置204使用確證旗標之位置及/或旗標之值以判定對應於旗標之應用程式。舉例而言,當活動公告訊息包括可被確證的大於一個旗標時,旗標中之每一者可用以識別可用以繼續活動的不同應用程式。在一些實施例中,旗標為多位元欄位且多位元欄位之不同值識別不同應用程式。在一些實施例中,伴隨電子裝置204儲存識別旗標之位置/值對應於的應用程式之映射。 接下來,伴隨電子裝置204判定對應於旗標之應用程式是否在伴隨電子裝置204處可用(步驟802)。舉例而言,伴隨電子裝置204可檢查對應於旗標之應用程式是否安裝於伴隨電子裝置204處。在一些實施例中,步驟802不執行/跳過,使得圖8中展示之處理程序從步驟800繼續至步驟804。舉例而言,步驟802並不在使用旗標以僅識別已知在伴隨電子裝置204處可用且不可由使用者解除安裝的預先安裝應用程式的實施例中執行。 若對應於旗標之應用程式可用(步驟802,是),則伴隨電子裝置204判定第二應用程式為對應於旗標之應用程式(步驟804)。處理程序接著結束,其可包括繼續圖5中之步驟506。 若對應於旗標之應用程式在伴隨電子裝置204處不可用(步驟802,否),則處理程序結束。此時,伴隨電子裝置204可判定第二應用程式不可用(例如如圖5中步驟504,否),或可繼續圖7中之步驟704以藉由使用來自活動公告訊息之活動識別符判定第二應用程式是否可用。 在一些實施例中,圖8中展示之處理程序允許不同於第一應用程式之應用程式在伴隨電子裝置204處繼續活動。舉例而言,考慮其中第一應用程式為網頁瀏覽器且在第一應用程式中執行的活動包括瀏覽社交媒體網站的情況。在此實例中,第二應用程式可為存取在第一應用程式/網頁瀏覽器中存取之資源(例如,社交媒體使用者頁面等)的社交媒體app(亦即,第二應用程式為app且並非為網頁瀏覽器)。藉由使用旗標,此等實施例可組態社交媒體app以在網頁瀏覽器停止的相同點處繼續在社交媒體網站處執行的活動。作為另一實例,在一些實施例中,第一應用程式為串流傳輸來自網站之電影的獨立媒體串流app(諸如媒體播放器app)且第二應用程式為可串流傳輸電影之網頁瀏覽器。藉由使用旗標,此等實施例組態網頁瀏覽器以繼續播放電影,其可包括使用用於活動之延展活動資料以使得網頁瀏覽器在媒體串流app停止處繼續播放電影。 在一些實施例中,源電子裝置202設定活動公告訊息中之第二旗標(或用於旗標之不同值)以指示源電子裝置202隨後將提供關於如何在伴隨電子裝置204處繼續活動的指令/資訊。在一些實施例中,對應於旗標之應用程式包含關於如何在伴隨電子裝置204處繼續活動的指令/資訊。在一些實施例中,延展活動資料提供用於在伴隨電子裝置204處繼續活動的指令/資訊。使用儲存公告活動之結構判定第二應用程式 如前參看圖3所述,在一些實施例中,活動公告訊息中之活動識別符識別結構(例如表)中之輸入項目,公告活動之電子裝置將用於公告活動之活動資訊儲存於該結構中。圖9呈現說明根據一些實施例之用於在活動識別符識別此結構中之輸入項目時判定第二應用程式是否可用的處理程序之流程圖。更特定言之,在圖9中展示之處理程序期間,伴隨電子裝置204使用識別公告活動表(源電子裝置202在其中儲存用於公告活動之活動資訊)中之輸入項目的活動識別符以判定與第一應用程式相關聯的第二應用程式在伴隨電子裝置204處是否可用(下文參看圖12更詳細地描述公告活動表之實例)。應注意圖9中展示之操作呈現為藉由一些實施例執行的操作之一般實例。藉由一些實施例執行的操作包括不同操作及/或以不同次序執行的操作。另外,儘管某些機構用於描述操作(例如源電子裝置202、伴隨電子裝置204),但在一些實施例中,其他電子裝置及/或機構執行操作。 圖9中展示之處理程序開始於伴隨電子裝置204接收識別其中源電子裝置202儲存用於公告活動之活動資訊的公告活動表中之輸入項目的活動識別符(步驟900)。在一些實施例中,活動識別符包括表識別符及輸入項目索引,表識別符識別其中源電子裝置202儲存用於公告活動之活動資訊的公告活動表,且輸入項目索引識別藉由表識別符識別的公告活動表中之儲存用於公告活動之活動資訊的輸入項目。在一些實施例中,表識別符為公告活動表資料之雜湊。 接下來,伴隨電子裝置204判定用於活動識別符之公告活動表是否在伴隨電子裝置204處可用(步驟902)。在一些實施例中,伴隨電子裝置204使用來自活動識別符之表識別符以判定伴隨電子裝置204是否儲存公告活動表之本端複本。 若用於活動識別符之公告活動表在伴隨電子裝置204處不可用(步驟902,否),則伴隨電子裝置204從源電子裝置202中擷取公告活動表(步驟904)。在一些實施例中,伴隨電子裝置204請求源電子裝置202發送由來自活動公告訊息之活動識別符識別的公告活動表,例如藉由表識別符識別的公告活動表。使用通信信號208及/或不同通信信號/不同頻道,伴隨電子裝置204可傳輸此請求,且源電子裝置202可對該請求作出回應。 在一些實施例中,伴隨電子裝置204週期性地與源電子裝置202同步其公告活動表之本端複本/多個複本。舉例而言,伴隨電子裝置204可使用「推送」機制(亦即在不發送針對公告活動表之複本的請求之情況下)接收來自源電子裝置202的公告活動表之複本。 若用於活動識別符之公告活動表在伴隨電子裝置204處可用(步驟902,是),或在接收到來自源電子裝置202之公告活動表之後,則伴隨電子裝置204使用活動識別符以從公告活動表中擷取活動資訊(步驟906)。舉例而言,伴隨電子裝置204可從公告活動表中之藉由輸入項目索引識別的輸入項目中擷取活動資訊。 在一些實施例中,圖9中展示之操作使得描述大於一個活動之資訊能夠在單一活動公告訊息中公告。舉例而言,考慮其中活動公告訊息之大小例如由於用以廣播活動公告訊息的網路協定之限制而受到限制的情況。在此情況下,輸入項目識別符(亦即,識別其中儲存活動資訊之輸入項目的活動識別符)可比經編碼表示(亦即自相同活動資訊產生的活動識別符)小(例如,使用少於活動識別符的位元來表示),使得此等實施例能夠在活動公告訊息中承載多個輸入項目識別符。 如前參看圖3所述,所描述實施例不限於使用用於儲存可用活動資訊的表。一些實施例使用用於儲存可用活動資訊之不同結構,諸如關聯陣列、內容可定址記憶體等。在此等實施例中,活動識別符可識別其中源電子裝置202儲存用於公告活動之活動資訊的結構中之輸入項目。舉例而言,在此等實施例中,表識別符可識別結構且輸入項目索引可識別其中源電子裝置202儲存用於公告活動之活動資訊的結構中之索引。 另外,儘管吾人描述使用一個公告活動表之實施例,但一些實施例使用大於一個公告活動表,例如在不同公告活動表中儲存用於公告活動之活動資訊。判定最近活動 如前所述,網路環境200可包括第二源電子裝置,其可廣播用於在第二源電子裝置處執行的活動之活動公告訊息。亦如較早描述,一些實施例包括活動公告訊息中之時戳以指示在活動公告訊息中公告之活動最後被執行的時間。圖10呈現說明根據一些實施例之用於從兩個或大於兩個活動公告訊息判定最近活動的處理程序之流程圖。更特定言之,在圖10中展示之處理程序期間,伴隨電子裝置204使用與來自源電子裝置202之公告(「活動公告」)一起包括的時戳及與來自第二源電子裝置206之公告(「第二活動公告」)一起包括的時戳來判定在活動公告及第二活動公告中公告的活動中之最近者。應注意圖10中展示之操作呈現為藉由一些實施例執行的操作之一般實例。藉由一些實施例執行的操作包括不同操作及/或以不同次序執行的操作。另外,儘管某些機構用於描述操作(例如源電子裝置202、伴隨電子裝置204、第二源電子裝置206),但在一些實施例中,其他電子裝置及/或機構執行操作。 對於圖10中展示之處理程序,假定伴隨電子裝置204已接收來自源電子裝置202之活動公告,例如如圖5中所示。因此,伴隨電子裝置204具有活動公告,包括與活動公告一起包括的第一時戳。 圖10中展示之處理程序開始於伴隨電子裝置204接收第二活動公告(步驟1000)。接下來,伴隨電子裝置204比較與活動公告一起包括之第一時戳與與第二活動公告一起包括之第二時戳(步驟1002)。舉例而言,伴隨電子裝置204可比較時戳以瞭解哪一者係較新的(亦即,指示最近的時間)。 若該比較指示第一時戳為較新的(步驟1004,是),則伴隨電子裝置判定在第一應用程式中執行的活動(亦即,活動公告中公告的活動)為最近的活動(步驟1006)。否則,若該比較指示第二時戳為較新的(步驟1004,否),則伴隨電子裝置204判定在第二應用程式中執行的活動(亦即,在第二活動公告中公告的活動)為最近的活動(步驟1008)。 在一些實施例中,伴隨電子裝置204藉由僅僅針對公告活動之最近者呈現活動係可恢復的指示而減少在伴隨電子裝置204(例如,如圖14中所示)之顯示器中呈現給使用者的指示之數目。在一些實施例中,伴隨電子裝置204使用時戳以按次序呈現可恢復活動的指示,例如首先呈現最近的活動,緊接著基於相對最近性按降序呈現其他公告活動。在此等實施例中,兩個或大於兩個指示可根據對應活動之相對最近性而並列、一者在另一者上方等呈現。 在一些實施例中,伴隨電子裝置204使用先前已繼續的活動之歷史以按次序呈現可恢復的活動之指示。在一些實施例中,伴隨電子裝置204將先前已繼續的活動排序較前,亦即將可恢復的先前已繼續的活動的指示先於可恢復的先前未繼續之活動的指示呈現。在一些實施例中,按基於對應活動中之每一者先前已繼續的次數的次序呈現兩個或大於兩個指示。活動資訊 如前所述,一些實施例使用描述在電子裝置處執行之活動的活動資訊。圖11呈現說明根據一些實施例的活動資訊1100、活動資訊1110及活動資訊1120之方塊圖。應注意圖11中展示之活動資訊1100、活動資訊1110及活動資訊1120經呈現為由一些實施例使用的活動資訊之格式的一般實例。一些實施例使用不同格式及/或包括在活動資訊中之不同資訊。 活動資訊1100包括應用程式識別符1102,其識別用以執行在活動資訊1100中描述之活動的應用程式。舉例而言,應用程式識別符1102(其包括字串com . apple . Keynote )識別應用程式Keynote,其為可用以編輯及觀看演示文稿之應用程式。活動描述符1104包括字串EditPresentation ,其將使用應用程式Keynote執行的活動識別為編輯演示文稿。時戳1106(其包括字串/數字103)識別活動最後被執行的時間,例如使用者在應用程式Keynote中編輯演示文稿的最後時間。時戳可指示活動被最後執行的實際時間(例如掛鐘時間(或其表示,諸如系統時間)),或其可為自在整點之後活動被最後執行以來或自同步事件以來逝去的時間之表示。在一些實施例中,時戳指示源電子裝置202被最後使用(例如由使用者主動地最後使用)的實際時間(例如絕對/掛鐘時間(或其表示,諸如系統時間)),或其可為自在整點之後源電子裝置202被最後使用以來或自同步事件以來逝去的時間之表示。在活動資訊1100中,旗標1108並未被確證。 活動資訊1110包括應用程式識別符1112,其識別用以執行在活動資訊1110中描述之活動的應用程式。舉例而言,應用程式識別符1112(其包括字串com . apple . Mail )識別應用程式Mail(可用以編寫及發送電子郵件訊息的應用程式)。活動描述符1114包括字串ComposeDraft 以識別使用應用程式Mail執行之活動包括編寫訊息草案。時戳1116(其包括字串/數字315)識別活動最後被執行之時間,例如,使用者使用Mail編寫草案的最後時間。用於活動資訊1110之旗標1118並未被確證。 活動資訊1120包括應用程式識別符1122,其識別用以執行在活動資訊1120中描述之活動的應用程式。舉例而言,應用程式識別符1122(其包括字串com . apple . Safari )識別應用程式Safari(網頁瀏覽器)。活動描述符1124包括字串www . evideostreamer . com ,其識別使用網頁瀏覽器存取之網域名稱。在此實例中,活動描述符1124保留網域名稱,因此活動資訊1120中之旗標1128為經確證旗標1128以指示活動描述1124包含網域名稱。時戳1126(其包括字串/數字820)識別網頁瀏覽器最後用以存取移動串流網站之時間。 活動資訊1130包括應用程式識別符1132,其識別用以執行在活動資訊1130中描述之活動的應用程式。舉例而言,應用程式識別符1132(其包括字串com . CompanyA . MediaPlayer )識別應用程式MediaPlayer(其在此實例中係由開發者CompanyA 開發)(其為可用以播放並記錄多媒體內容之應用程式)。活動描述符1134包括字串PlayVideo 以識別使用應用程式MediaPlayer執行之活動包括播放視訊(亦即,視訊播放)。時戳1136(其包括字串/數字902)識別活動被最後執行之時間,例如,使用者使用MediaPlayer播放視訊的最後時間。用於活動資訊1130之旗標1138並未被確證。 出於說明之目的,圖11中展示之時戳被計算為自同步事件(例如整點)起的增量(差)。因此,在圖11中展示之實例中,使用活動資訊1100描述的活動為最近的活動,此係由於時戳1106指示自使用活動資訊1100描述之活動被執行以來從整點起已逝去最少時間量。 應注意儘管圖11中展示之實例使用用於應用程式識別符及活動描述符之字串,但一些實施例可使用不同資訊以識別應用程式及/或活動。舉例而言,一些實施例將數字識別符用於應用程式識別符及/或活動描述符。在一些實施例中,應用程式識別符為線上「app商店」中的對應應用程式之識別符。在一些實施例中,應用程式識別符包含束識別符(例如束ID)中的一些或全部。另外,儘管所展示應用程式識別符與活動描述符分開,但一些實施例在單一識別符中組合應用程式識別符及活動描述符。 在一些實施例中,應用程式/app開發者提供用於活動描述符(諸如活動描述符1104、活動描述符1114、活動描述符1124及活動描述符1134)之資訊。在此等實施例中,應用程式/app之開發者可判定用於應用程式/app之若干活動且可提供活動描述符之相關值。公告活動表 圖12呈現說明根據一些實施例之公告活動表1200的方塊圖。如上文所描述,公告活動表1200包括關於已被公告之活動(亦即,其活動公告訊息已由諸如源電子裝置202之電子裝置發送的活動)的資訊。應注意圖12中展示之公告活動表經呈現為由一些實施例使用的公告活動表之一般實例。一些實施例以不同方式表示活動資訊及/或在公告活動表中包括更多或更少資訊。 輸入項目1202(其藉由輸入項目索引1206識別)儲存活動資訊1100及活動識別符1204。在此實例中,活動識別符1204係使用應用程式識別符1102及活動描述符1104(諸如字串「com . apple . Keynote :: EditPresentation 」之雜湊)產生。 輸入項目1212(其藉由輸入項目索引1216識別)儲存活動資訊1110及活動識別符1214。在此實例中,活動識別符1214係使用應用程式識別符1112及活動描述符1114(諸如字串「com . apple . Mail :: ComposeDraft 」之雜湊)產生。 輸入項目1222(其藉由輸入項目索引1226識別)儲存活動資訊1120及活動識別符1224。在此實例中,使用活動描述符1124(諸如字串www.evideostreamer.com之雜湊)產生活動識別符1224。 輸入項目1232(其藉由輸入項目索引1236識別)儲存活動資訊1130及活動識別符1234。在此實例中,活動識別符1234係使用應用程式識別符1132及活動描述符1134(諸如字串「com . CompanyA . MediaPlayer :: PlayVideo 」之雜湊)產生。 出於說明之目的,輸入項目1202至1232分別儲存所有活動資訊1100至1130。然而,應注意在一些實施例中,輸入項目1202至1232分別儲存活動資訊1100至1130中之僅一些。舉例而言,一些實施例不在輸入項目1202至1232中儲存時戳1106至1136。可用活動表 在一些實施例中,上文所描述之可用活動表類似於圖12中展示之公告活動表1200而被格式化。然而,可用活動表中之輸入項目包括用於在對應電子裝置(例如伴隨電子裝置204)中可用的應用程式之應用程式資訊。活動公告訊息 圖13呈現說明根據一些實施例之活動公告1300(例如活動公告訊息)的方塊圖。應注意圖13中展示之活動公告訊息經呈現為由一些實施例使用的活動公告訊息之一般實例。一些實施例以不同方式定序活動公告訊息中之欄位及/或在活動公告訊息中包括不同資訊。 活動公告訊息1300視需要包括裝置ID欄位1302及版本ID欄位1304。裝置ID欄位1302包括識別活動公告訊息1300從其中發送的裝置(例如,識別源電子裝置202)之識別符 。版本ID欄位1304包括版本識別符,諸如伴隨電子裝置204可用以判定活動資訊1300中之欄位如何經格式化及/或資訊如何儲存於欄位中的版本識別符。 活動識別符欄位1306包括活動識別符,例如活動識別符1204至1224中之一或多者。旗標欄位1308包括對應於公告活動之一或多個旗標,例如旗標1108至1128。 時戳欄位1310包括用於活動識別符欄位1306中公告之活動的時戳,例如時戳1106至1126中之一或多者。可恢復活動指示 如前所述,一些實施例在請求延展活動資料之前呈現活動係可恢復的之指示。圖14呈現說明根據一些實施例之可恢復活動指示(亦即,活動係可恢復的之指示)的方塊圖。更特定言之,圖14展示顯示於伴隨電子裝置204之顯示器1400上的可恢復活動指示。應注意圖14中展示之可恢復活動指示經呈現為由一些實施例使用的可恢復活動指示之一般實例。一些實施例使用不同可恢復活動指示及/或以不同方式呈現可恢復活動指示。 在所說明之實施例中,伴隨電子裝置204為包含觸控式螢幕顯示器1400之智慧型電話。圖14中所展示的實施例係在接收狀態中,此係由於顯示器1400展示具有解鎖指示器1402(其展示片語「滑動以解鎖」)之鎖定螢幕。一般而言,伴隨電子裝置204之使用者使用解鎖指示器1402執行操作以解鎖伴隨電子裝置204,諸如使用手指橫跨顯示器1400滑動解鎖指示器1402之圖形。 可恢復活動指示1404包含使用者可操縱以接受(或拒絕)活動轉移的圖形(例如圖示)。在圖14中,可恢復活動指示1404包含類似於信封之圖示,指示可恢復活動包括使用郵件應用程式。在一些實施例中,使用者可藉由在可恢復活動指示1404上點選/觸碰可恢復活動指示1404,及/或藉由沿顯示器1400上之路徑移動可恢復活動指示1404而接受活動轉移。舉例而言,在一些實施例中,使用者可藉由觸碰及沿或接近路徑1406(展示為虛線)拖曳可恢復活動指示1404而接受活動轉移。 出於說明之目的,可恢復活動指示1404係在伴隨電子裝置204之鎖定螢幕處展示。在一些實施例中,可恢復活動指示1404可在不同螢幕/位置處(例如在解鎖螢幕處、在選單欄處、藉由使用通知窗/快顯,等)展示。另外,可恢復活動指示1404之位置、大小、圖形、色彩及/或其他視覺特徵可針對不同實施例而變化,且可取決於可恢復的活動之類型。舉例而言,在一些實施例中,伴隨電子裝置204基於用於公告活動之應用程式識別符判定在可恢復活動指示1404中展示的圖形。作為另一實例,在一些實施例中,可恢復活動指示1404在顯示器1400之左下角處展示。一些實施例同時呈現多個可恢復活動指示符。 應注意活動轉移之接受(或拒絕)可包括沿不同於路徑1406之路徑(例如至螢幕之頂部、沿彎曲路徑等)移動可恢復活動指示1404。在一些實施例中,使用者可藉由在可恢復活動指示1404上點選,藉由在可恢復活動指示1404上輕觸,藉由滑移可恢復活動指示1404,藉由使用可恢復活動指示1404執行示意動作等而接受活動轉移。自動及手動活動公告 在一些實施例中,源電子裝置202自動地,例如以預定時間間隔、一旦接收到活動資訊、基於源電子裝置202之偵測位置等廣播活動公告。在此等實施例中,源電子裝置202可提供使用者可用以將活動公告之廣播開啟或關閉的設定,例如系統偏好。 在一些實施例中,源電子裝置202手動地開始廣播活動公告,亦即,等待來自使用者之輸入以開始廣播活動公告。在此等實施例中之一些中,源電子裝置202在偵測到使用者之輸入後開始廣播活動公告,並繼續廣播活動公告持續預定時間段及/或直至使用者提供令源電子裝置202停止活動公告之輸入為止。在一些實施例中,用於開始及/或停止活動公告的使用者輸入包括源電子裝置202之運動(例如搖晃源電子裝置202、在弧線中移動源電子裝置202、擺動源電子裝置202等)、在源電子裝置202之觸控螢幕上執行一或多個示意動作、按壓按鍵及/或按鈕組合,等。 在一些實施例中,活動公告訊息及/或源電子裝置202連同活動公告訊息一起(亦即,除活動公告訊息以外,亦)發送至伴隨電子裝置204之訊息使得伴隨電子裝置204起始計時器。在一些實施例中,伴隨電子裝置204保持在如上文所描述之接收狀態中直至此計時器到期。源電子裝置202可提供計時器之到期時間至伴隨電子裝置204,或伴隨電子裝置204可判定到期時間。 在一些實施例中,伴隨電子裝置204呈現活動係可恢復的之指示直至計時器到期為止,且若使用者接受指示,則在伴隨電子裝置204處繼續活動而不需使用者執行一或多個操作(例如指印掃描、密碼輸入,等)以解鎖伴隨電子裝置204。更特定言之,伴隨電子裝置204可偵測使用者接受指示且可繞過鎖定螢幕/解鎖操作,從而允許使用者開始使用伴隨電子裝置204而不需解鎖伴隨電子裝置204。在一些實施例中,僅在計時器到期之前允許使用者繞過鎖定螢幕/解鎖操作。活動繼續構架 在一些實施例中,第三方應用程式經由在可參與活動轉移操作之電子裝置處可用的「活動繼續」構架接收對活動轉移操作(例如較早參看圖3至圖10描述的操作)中之一些或全部的存取。活動繼續構架可為第三方應用程式提供對作業系統功能、精靈協助程式、處理程序、服務等(其執行活動轉移操作中之至少一些)的存取。舉例而言,在一些實施例中,電子裝置及/或電子裝置之作業系統的提供者提供應用程式設計介面(API),第三方應用程式可經由該應用程式設計介面對促進活動轉移操作之功能進行調用。在一些實施例中,活動繼續構架使得第三方應用程式(及第三方應用程式開發者)能夠將活動自一個電子裝置轉移至另一電子裝置而不需實施(或甚至瞭解)活動繼續之低層級細節。 舉例而言,在一些實施例中,為使得第三方應用程式能夠參與活動轉移操作,第三方應用程式開發者提供用於第三方應用程式可執行的活動之活動描述符及組態第三方應用程式以執行活動的方法。在此等實施例中之一些中,在諸如源電子裝置202之電子裝置處,第三方應用程式對由活動繼續構架提供的功能進行調用以提供用於在第三方應用程式中執行之活動的活動描述符(及可能延展活動資料)。在諸如伴隨電子裝置204之電子裝置處,為組態第三方應用程式以執行活動,活動繼續構架可傳遞延展活動資料至第三方應用程式(例如經由命令列切換器或參數,藉由使用物件,等)。因此,活動繼續構架可為第三方應用程式開發者促進以最小努力及費用進行第三方應用程式之活動繼續。電子裝置之間交換訊息 圖15呈現說明根據一些實施例之在電子裝置之間交換的訊息之泳道圖。如圖15中可見,訊息係在一時間段內在源電子裝置202與伴隨電子裝置204之間交換,其中活動公告1500首先出現且較低訊息隨後出現。儘管圖15經展示有按特定次序交換之訊息,但在一些實施例中,其他訊息被交換及/或訊息按不同次序交換。一般而言,在所描述實施例中之電子裝置交換充足訊息以實現本文中描述之操作。 圖15中之訊息與由源電子裝置202及/或伴隨電子裝置204執行的兩個操作相關聯。第一操作(其包括公告1500)為諸如圖3中展示之活動公告操作。在活動公告操作期間,源電子裝置202廣播至少一個活動公告1500。 第二操作(其包括對於延展活動資料的請求1502、延展活動資料1504及活動轉移之通知1506)為諸如圖5至圖6中展示之活動轉移操作。在活動轉移操作期間,伴隨電子裝置204以對於延展活動資料之請求1502對活動公告1500作出回應。在接收到對於延展活動資料之請求1502後,源電子裝置202藉由發送延展活動資料1504而回應。在一些實施例中,在伴隨電子裝置204使用延展活動資料以開始在第二應用程式處執行活動之後,伴隨電子裝置204發送活動轉移之通知1506以讓源電子裝置202知曉活動被轉移。轉遞與活動相關之資訊 如上文所描述,在一些實施例中,源電子裝置(例如源電子裝置202)將與活動相關之資訊轉遞至伴隨電子裝置(例如伴隨電子裝置204)。一般而言,與活動相關之資訊包括可在執行活動(例如,如本文所描述轉移至伴隨電子裝置的活動或在伴隨電子裝置上執行之另一活動)時使用的任何資訊。舉例而言,與活動相關之資訊包含(但不限於)來自源電子裝置202中之複製及貼上剪貼簿的資訊(例如,文字、影像、視訊、聲音、設定、檔案等)、檔案之較早版本、撤銷緩衝器(其保留可用以反轉改變的由使用者對系統進行的改變之記錄,等)之內容,及/或其他類型之資訊。在接收與活動相關之資訊後,伴隨電子裝置可將與活動相關之資訊用於一或多個活動。舉例而言,當與活動相關之資訊包含撤銷緩衝器之內容時,伴隨電子裝置可使用從源電子裝置接收之撤銷緩衝器之內容更新本端撤銷緩衝器(亦即,伴隨電子裝置中之撤銷緩衝器)。舉例而言,撤銷緩衝器可包括當編輯文件時執行的最後N個操作之清單,該清單經組態以使得能夠在隨後編輯文件的同時使用選單、熱鍵組合等反轉或「撤銷」操作。以此方式,伴隨電子裝置可組態自身以實現先前在源電子裝置上執行的操作之反轉或撤銷。 圖17呈現說明根據一些實施例之用於將與活動相關資訊從源電子裝置轉遞至伴隨電子裝置的處理程序之流程圖。更特定言之,圖17說明其中源電子裝置202使用公告訊息將與活動相關之資訊轉遞至伴隨電子裝置204的實施例。應注意圖17中展示之操作呈現為藉由一些實施例執行的操作之一般實例。藉由一些實施例執行的操作包括不同操作及/或以不同次序執行的操作。另外,儘管某些機構用於描述操作(例如伴隨電子裝置204等),但在一些實施例中,其他機構執行操作。 對於圖17中展示之處理程序,源電子裝置202中之剪貼簿的內容用作與活動相關之資訊。然而,在一些實施例中,且如上文所描述,其他類型之與活動相關資訊可從源電子裝置202轉遞。另外,如本文中所使用之「剪貼簿」指示對應裝置中之複製及貼上剪貼簿。在一些實施例中,剪貼簿為在電子裝置中提供用於資訊之暫時儲存的軟體服務(例如作業系統軟體服務、獨立應用程式等)。剪貼簿使得使用者能夠執行諸如複製、貼上、剪切等之操作以與資訊互動。此等剪貼簿通常在此項技術中已知且因此本文中並不更詳細地描述。 圖17中展示之處理程序開始於源電子裝置202判定與活動相關之資訊可供用於轉遞至伴隨電子裝置204(步驟1700)。舉例而言,基於接收上文所描述之活動資訊(參見,例如圖3中之步驟300),源電子裝置202可執行一或多個檢查並判定與活動相關之資訊係可用的。作為另一實例,在接收使用者已執行複製資訊(例如複製文字、檔案、影像等)至剪貼簿的複製操作之指示後,源電子裝置202可判定與活動相關之資訊係可用的。作為另一實例,源電子裝置202可監視作為執行活動之部分的在源電子裝置202中執行的各種操作且可直接或間接判定與活動相關之資訊已變成可用。如上文所描述,對於圖17中之實例,剪貼簿之內容為與活動相關之資訊。源電子裝置202因此在步驟1700中判定在執行當前活動時在剪貼簿上存在一或多個置放於此處之複製項目。 源電子裝置202接著產生與活動相關之資訊公告(步驟1702)。一般而言,與活動相關之資訊公告包括充足資訊以使得伴隨電子裝置204 (及可能接收與活動相關之資訊公告的其他裝置)能夠判定與活動相關之資訊係所關注的並處理與活動相關之資訊。繼續剪貼簿實例,源電子裝置202可產生與活動相關之資訊公告,其使得伴隨電子裝置204能夠判定在與活動相關之資訊公告中描述的與活動相關之資訊(亦即,來自源電子裝置202之剪貼簿的內容)為伴隨電子裝置204所關注的,以及使用來自源電子裝置202之剪貼簿的內容或基於來自源電子裝置202之剪貼簿的內容來更新伴隨電子裝置204中之剪貼簿。 圖18呈現說明根據一些實施例之由源電子裝置202產生的與活動相關之資訊公告1800的方塊圖。與活動相關之資訊公告1800視需要包括裝置ID欄位1802、版本ID欄位1804、活動識別符欄位1806及時戳欄位1808。裝置ID欄位1802包括識別與活動相關之資訊公告1800從其中發送的裝置(例如,識別源電子裝置202)之識別符 。版本ID欄位1804包括版本識別符,諸如伴隨電子裝置204可用以判定與活動相關之資訊公告1800中的欄位如何經格式化及/或資訊如何儲存於欄位中的版本識別符。活動識別符欄位1806包括識別對應與活動相關之資訊與其相關聯之活動的活動識別符,例如活動識別符1204至1224中之一或多者。時戳欄位1808包括用於在活動識別符欄位1806中公告的活動之時戳。如上文所描述,時戳可用以解決處置兩個或大於兩個與活動相關之資訊公告1800的次序、忽略哪些與活動相關之資訊公告1800等。 與活動相關之資訊欄位1810包括與活動相關之資訊及/或基於與活動相關之資訊的資訊、自與活動相關之資訊獲得的資訊,或以其他方式識別與活動相關之資訊的資訊。繼續上述實例,在一些實施例中,源電子裝置202在與活動相關之資訊欄位1810中包括來自源電子裝置202中之剪貼簿的實際內容中之一些或全部。舉例而言,若文字之區段最近複製至剪貼簿,則文字之區段(亦即文字自身)(可能具有包括格式化、時戳、版本資訊等之後設資料)可包括於與活動相關之資訊欄位1810中。作為另一實例,若文字之區段、影像及檔案在一或多個複製操作期間經單獨地複製至剪貼簿,則文字之區段、影像及檔案(可能具有對應後設資料)中的一些或全部可包括於與活動相關之資訊欄位1810中。 作為另一實例,在其中源電子裝置202包括基於與活動相關資訊欄位1810中之與活動相關之資訊、自其獲得的資訊等的資訊的實施例中,源電子裝置202可將經壓縮資訊、代表性資訊、可用以導出與活動相關之資訊的資訊,及/或基於與活動相關之資訊或與其相關聯的其他資訊包括在與活動相關之資訊欄位1810中。舉例而言,源電子裝置202可包括資訊係可用的之指示(例如,指標、標籤、識別符、參考及/或其他指示器)(可能包括資訊之類型的基本識別),但不在與活動相關之資訊公告1800中包括實際與活動相關之資訊自身。在此等實施例中,伴隨電子裝置204可執行一或多個操作以用於擷取在與活動相關之資訊公告1800中指示的與活動相關之資訊。舉例而言,假定源電子裝置202包括至與活動相關之資訊欄位1810中的與活動相關之資訊的指標,伴隨電子裝置204可經由一或多個對應獨立通信自源電子裝置202的擷取由指標指示的與活動相關之資訊。 在一些實施例中,除實際與活動相關之資訊中的一些或全部以外,基於與活動相關之資訊、自其獲得的資訊等的資訊可包括於與活動相關之資訊欄位1810中。繼續剪貼簿實例,假定文字之小區段(100位元組)及較大影像(4 MB)經複製至源電子裝置202中之剪貼簿,源電子裝置202可在與活動相關資訊欄位1810中包括文字之小區段(及可能對應後設資料),但可僅僅包括對影像之參考。伴隨電子裝置204可接著如上文所描述使用參考以請求影像。在一些實施例中,與活動相關之資訊之大小用以判定與活動相關之資訊或基於其之資訊是否將包括於與活動相關之資訊公告1800中。舉例而言,基於一或多個臨限值(例如用於與活動相關之資訊公告1800的最大大小,等),與活動相關之資訊可直接包括於或間接包括於(例如由指標、指示器等表示)與活動相關之資訊欄位1810中。 源電子裝置202接著傳輸(例如廣播、單播、多播等)與活動相關之資訊公告1800(步驟1704)。舉例而言,使用對應協定,源電子裝置202可單播與活動相關之資訊公告1800至伴隨電子裝置204。一般而言,在此操作期間,源電子裝置202經由有線或無線通信鏈路提供與活動相關之資訊公告1800至伴隨電子裝置204。如下文更詳細地描述,在接收到與活動相關之資訊公告1800後,伴隨電子裝置204選擇性地提供與活動相關之資訊以在伴隨電子裝置204中執行一或多個活動時使用。 舉例而言,在圖17中,描述其中源電子裝置202與上文所描述之活動公告(例如活動公告1300)單獨地公告與活動相關之資訊的實施例。換言之,在一些實施例中,除與活動相關之資訊公告1800以外還傳輸活動公告1300。然而,在一些實施例中,上文所描述之與活動相關之資訊(亦即,實際資訊、指標等)中的一些或全部包括於活動公告1300中。在此等實施例中,可不使用單獨的與活動相關之資訊公告1800。在此等實施例中,活動公告1300包括用於保留與活動相關之資訊或基於其之資訊的各種欄位、值等。在此等實施例中,伴隨電子裝置204可執行類似於圖19中展示彼等操作的操作以處理活動公告1300中之與活動相關之資訊。 儘管與活動相關之資訊公告1800經展示為與活動相關之資訊公告的實例,但在一些實施例中,與活動相關之資訊公告1800係以不同方式格式化(例如包括欄位之不同配置,等)。舉例而言,在一些實施例中,經描述為可選的欄位中之一或多者不為可選的。一般而言,與活動相關之資訊公告1800包括充足資訊以使得源電子裝置202能夠傳達與活動相關之資訊至伴隨電子裝置204以使得伴隨電子裝置204能夠提供與活動相關之資訊以在伴隨電子裝置204中執行一或多個活動時使用。 圖19呈現說明根據一些實施例之用於在伴隨電子裝置中接收來自源電子裝置的與活動相關之資訊的處理程序之流程圖。更特定言之,圖19說明其中伴隨電子裝置204從源電子裝置202接收與活動相關之資訊的實施例。應注意圖19中展示之操作呈現為藉由一些實施例執行的操作之一般實例。藉由一些實施例執行的操作包括不同操作及/或以不同次序執行的操作。另外,儘管某些機構用於描述操作(例如伴隨電子裝置204等),但在一些實施例中,其他機構執行操作。 對於圖19中展示之處理程序,源電子裝置202中之剪貼簿的內容用作與活動相關之資訊。然而,在一些實施例中,且如上文所描述,可從源電子裝置202接收其他類型之與活動相關之資訊。 圖19中展示之處理程序開始於伴隨電子裝置204從源電子裝置202接收與活動相關之資訊公告1800 (步驟1900)。如上文所描述,此操作可包括接收包括使得伴隨電子裝置204能夠處理與活動相關資訊並選擇性地提供與活動相關之資訊以在伴隨電子裝置204中執行一或多個活動時使用的資訊的單播、廣播、多播等與活動相關之資訊公告1800。 伴隨電子裝置204接著判定與活動相關之資訊公告1800中描述的與活動相關之資訊是否為所關注的(1902)。一般而言,在此操作期間,伴隨電子裝置204判定與活動相關之資訊是否待用於伴隨電子裝置204。應注意,在本說明書中,決定與活動相關之資訊係所關注的且相應地提供(或不提供)與活動相關之資訊的操作被描述為「選擇性地」提供與活動相關之資訊。換言之,伴隨電子裝置204選擇是否提供與活動相關之資訊至如本文所描述的伴隨電子裝置204中之活動。 在一些實施例中,當判定與活動相關之資訊是否為所關注的時,伴隨電子裝置204在伴隨電子裝置204之顯示器(例如顯示器1400)上呈現與活動相關之資訊可用性指示器。圖20呈現說明根據一些實施例之與活動相關之資訊可用性指示器2000的方塊圖。如圖20中可見,與活動相關之資訊可用性指示器2000為在伴隨電子裝置204之顯示器1400上呈現的圖示。在一些實施例中,與活動相關之資訊可用性指示器2000為通常指示與活動相關之資訊為可用的簡單圖示。然而,在一些實施例中,與活動相關之資訊可用性指示器2000包括圖示內的與活動相關之資訊的類型之表示(例如,如所示之文字指示器、影像指示器、撤銷緩衝器指示器、剪貼簿指示器、組合指示器等)。類似於上文所描述之可恢復活動指示1404,在一些實施例中,使用者可選擇與活動相關之資訊可用性指示器2000以將與活動相關之資訊的接受(或不接受)傳信至伴隨電子裝置204。舉例而言,使用者可在觸敏式螢幕上手指輕觸與活動相關資訊可用性指示器2000,在與活動相關之資訊可用性指示器2000上執行滑鼠指標懸停及點選,點選選擇及沿指定路徑拖曳與活動相關之資訊可用性指示器2000,等。在一些實施例中,與活動相關之資訊的接受使得伴隨電子裝置204判定與活動相關之資訊為所關注的。 在一些實施例中,當決定與活動相關之資訊是否為所關注的(除使用上文所描述之與活動相關之資訊可用性指示器2000以外或替代其)時,伴隨電子裝置204判定對應活動是否待從源電子裝置202轉移至伴隨電子裝置204,與活動相關之資訊是否呈由伴隨電子裝置204支援的格式,等。一般而言,當與活動相關之資訊應且可使伴隨電子裝置204中之活動可用時,伴隨電子裝置204判定與活動相關之資訊為所關注的。 若在與活動相關之資訊公告1800中描述的與活動相關之資訊並非為所關注的(步驟1904),則伴隨電子裝置204可停止與活動相關資訊公告1800相關的處理且處理程序結束。對於此操作,在一些實施例中,伴隨電子裝置204可從顯示螢幕中移除與活動相關之資訊可用性指示器2000,可組態自身以忽略將來的重複公告,可傳達否定應答或拒絕至源電子裝置202,等。 若在與活動相關之資訊公告1800中描述的與活動相關之資訊為所關注的(步驟1904),則伴隨電子裝置204獲取與活動相關之資訊(1906)。一般而言,在此操作期間,伴隨電子裝置204從與活動相關之資訊公告1800及源電子裝置202中之一者或兩者擷取與活動相關之資訊中的至少一些。對於此操作,若與活動相關之資訊公告1800含有實際與活動相關之資訊中的一些或全部,則伴隨電子裝置204可從與活動相關之資訊公告1800中獲取與活動相關之資訊中的一些或全部。舉例而言,假定源電子裝置202包括與活動相關之資訊公告1800中之剪貼簿的內容中之至少一些,伴隨電子裝置204可從與活動相關之資訊公告1800中獲取剪貼簿之內容。 除從與活動相關之資訊公告1800中獲取與活動相關之資訊以外或替代其,伴隨電子裝置204可從源電子裝置202中獲取與活動相關之資訊中的一些或全部。舉例而言,若源電子裝置202在與活動相關之資訊公告1800中包括至源電子裝置202上的與活動相關之資訊的指標(或其他指示器)(例如,至源電子裝置202中之剪貼簿上的諸如影像檔案之資訊的指標,等),則伴隨電子裝置204可向源電子裝置202請求與活動相關之資訊。 在一些實施例中,與活動相關之資訊可連同延展活動資料一起藉由源電子裝置202獲取,亦即可包括於延展活動資料中。在此等實施例中之一些中,伴隨電子裝置204請求發送與活動相關之資訊連同延展活動資料。舉例而言,與活動相關之資訊公告1800可包括與活動相關之資訊係可用的之指示(例如指標或其他指示器),且如本文所描述伴隨電子裝置可接收請求以獲取與活動相關之資料以及轉移對應活動(亦即,請求延展活動資料)。 伴隨電子裝置204接著提供與活動相關之資訊以在伴隨電子裝置204中執行一或多個活動時使用(步驟1908)。在此操作期間,伴隨電子裝置204使用一或多個對應結構(記憶體、剪貼簿、快取記憶體、緩衝器等)以儲存與活動相關之資訊使得與活動相關之資訊可用於活動(例如從源電子裝置202轉移至伴隨電子裝置204的活動,在伴隨電子裝置204上開始之活動,等)。在一些實施例中,「提供與活動相關之資訊以在執行一或多個活動時使用」包含以在活動之操作期間與活動相關之資訊可以對應及預期方式使用的方式提供與活動相關之資訊。繼續剪貼簿實例,此可包括使來自源電子裝置202之剪貼簿的內容可供用於貼上及其他操作,此係因為剪貼簿上資訊(亦即來自伴隨電子裝置204中之剪貼簿)通常可用於伴隨電子裝置204中。舉例而言,因此熱鍵及選單選擇可用以在伴隨電子裝置204上存取從源電子裝置202複製的剪貼簿之內容。作為另一實例,假定與活動相關之資訊包括撤銷緩衝器之內容,伴隨電子裝置204中之撤銷緩衝器可使用與活動相關之資訊(亦即,在源電子裝置202中執行的操作之歷史)來更新,使得最初未在伴隨電子裝置204中執行的對應操作可在伴隨電子裝置204中撤銷。 繼續剪貼簿實例,在一些實施例中,提供與活動相關之資訊以當在伴隨電子裝置204中執行一或多個活動時使用包括複製在與活動相關之資訊公告1800中描述的剪貼簿之內容至伴隨電子裝置204中之剪貼簿。在此等實施例中,剪貼簿之內容可藉由在與活動相關之資訊公告1800中描述的剪貼簿之內容部分或完全地覆寫。在一些實施例中,為避免覆寫且因此丟失伴隨電子裝置204中之剪貼簿上的適用之資訊,伴隨電子裝置204(例如其上之作業系統)提供獨立轉移資訊緩衝器。在此等實施例中,可使用對應選單選擇、熱鍵等存取轉移資訊緩衝器。在一些實施例中,可向使用者呈現覆寫剪貼簿或寫入資訊至轉移活動緩衝器的選擇(例如以快顯提示)。在一些實施例中,轉移資訊緩衝器係為電子裝置中之資訊提供暫時儲存的軟體服務(例如作業系統軟體服務、獨立應用程式等),但基於硬體之轉移資訊緩衝器可單獨或與軟體轉移資訊緩衝器組合使用。轉移資訊緩衝器使得使用者能夠執行諸如複製、貼上、剪切等之操作以與儲存於轉移資訊緩衝器中的資訊互動。 在一些實施例中,可向使用者呈現介面(例如顯示器1400上),該介面使得使用者能夠判定來自源電子裝置202之剪貼簿的哪些內容待複製至伴隨電子裝置中之剪貼簿且來自源電子裝置202之剪貼簿的內容待複製至伴隨電子裝置中之剪貼簿何處。舉例而言,在選擇與活動相關之資訊可用性指示器2000之後,展示或以其他方式列出來自源電子裝置202之剪貼簿之內容的快顯視窗可呈現在顯示器1400上,快顯視窗包括用於選擇哪些內容待複製至伴隨電子裝置204中之剪貼簿、內容待複製至剪貼簿上何處等的機構。 應注意,儘管與活動相關之資訊可用性指示器2000呈現在鎖定螢幕上的特定位置中,但在一些實施例中,與活動相關之資訊可用性指示器2000可呈現在伴隨電子裝置204之操作期間的任何螢幕上、不同位置中,等。另外,可連同可恢復活動指示1404一起及/或相關聯地呈現與活動相關之資訊可用性指示器2000。在此等實施例中,使用者可選擇與活動相關之資訊可用性指示器2000及可恢復活動指示1404中之一者或兩者以進行轉移活動(如本文所描述)或接受與活動相關之資訊中之一者或兩者。在一些實施例中,伴隨電子裝置204僅呈現可恢復活動指示1404且使用者選擇可恢復活動指示1404使得伴隨電子裝置204轉移活動(如本文所描述)且接受與活動相關之資訊。 僅為達成說明及描述之目的呈現實施例之前文描述。其並不意欲為窮盡性的或將實施例限制為所揭示之形式。因此,許多修改及變化對於熟習此項技術者而言將為顯而易見的。另外,以上揭示內容並不意欲限制實施例。實施例之範疇藉由所附申請專利範圍界定。 Related application This application is a partial continuation application of the pending US Patent Application No. 14 / 586,566, and the priority of this case is hereby claimed. The US Patent Application No. 14 / 586,566 is entitled "Activity Continuation between Electronic Devices", The case was applied on December 30, 2014. This application also claims the priority of the now-expired U.S. Provisional Patent Application No. 62 / 005,781, which is titled "Activity Continuation between Electronic Devices" and it was applied on May 30, 2014, and the original application 14 / 586,566 also claimed its priority. These two applications are incorporated by reference. This application is related to the United States Patent Application, which was filed by the inventors Marc J. Krochmal, Christopher S. Linn, John J. Iarocci, Geoffrey Stahl, and Jacques P. Gasselin de Richebourg on the same date as this application. No. 14 / 586,511, the title of the case is "Companion Application for Activity Cooperation", and the case has the agent case number APL-P23129US1. This application is also related to US Patent Application No. 14 / 475,329 in the application filed by inventors Craig P. Dooley, Akshay Mangalam Srivatsa, Anjali S. Sandesara and Michael J. Giles on September 2, 2014. The title of the case is "Operating Mode Transitions based on Advertising Information", and the case has the agent case number APL-P22643US1. This application is also related to US Patent Application No. 14 / 474,466 in the application filed by inventors Jason C. Conn, Akshay Mangalam Srivatsa, Craig P. Dooley and Michael J. Giles on September 2, 2014. The case title is "Predefined Wireless Pairing", and the case has the agent case number APL-P22642US1. This application is further about the inventors Christopher S. Linn, Keith Stattenfield, Christopher C. Jensen, Alexander R. Ledwith, David A. Carter, Marc J. Krochmal, John J. Iarocci and Jonathan M. Grynspan in December 2014 U.S. Patent Application No. 14 / 586,566 in the application filed on May 30, the title of the case is "Activity Continuation between Electronic Devices", and the case has attorney case number APL-P22791US1. Each of the applications described above is incorporated herein by reference. The following description is presented to enable any person skilled in the art to make and use the described embodiments, and to provide the following description in the context of specific applications and their requirements. Those skilled in the art will readily understand various modifications to the described embodiments, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the described embodiments. Therefore, the described embodiments are not limited to the shown embodiments, but are intended to conform to the broadest scope consistent with the principles and features disclosed herein. In some embodiments, an electronic device (such as electronic device 100 and / or a portion thereof in FIG. 1) uses program code and / or data stored on a computer-readable storage medium to perform some of the operations described herein Or all. More specifically, the electronic device reads the code and / or data from the computer-readable storage medium and executes the code and / or usage data when performing the described operation. In such embodiments, the computer-readable storage medium may be any device or medium that stores the program code and / or data used by the electronic device, or a combination thereof. For example, computer-readable storage media may include (but is not limited to) volatile memory or non-volatile memory, such as semiconductor memory (eg, flash memory, random access memory (eDRAM, RAM, SRAM , DRAM, DDR, DDR2 / DDR3 / DDR4 SDRAM, etc.) and / or magnetic or optical storage media (such as disk drives, tapes, CDs, DVDs). In the described embodiments, computer-readable storage media does not include illegal computer-readable storage media such as temporary signals. In some embodiments, one or more hardware modules are configured to perform the operations described herein. For example, hardware modules may include (but are not limited to) one or more processors / cores / central processing units (CPUs), application specific integrated circuit (ASIC) chips, field programmable gate arrays (FPGAs) , Cache memory / cache memory controller, memory management unit, computing unit, embedded processor, graphics processor (GPU) / graphics core, pipeline and / or other programmable logic devices. When these hardware modules are activated, the hardware modules perform some or all of the operations. In some embodiments, the hardware module includes one or more general circuits configured to execute operations by executing instructions (program code, firmware, etc.). In this description, reference may be made to functional blocks when describing some embodiments. Generally speaking, a functional block includes one or more associated circuits, devices, and / or mechanisms that perform one or more of the described operations. In some embodiments, at least some of the functional blocks include general-purpose processing circuits that execute program code (eg, microcode, firmware, application programs, etc.) that causes the general-purpose processing circuits to perform the described operations.Overview The described embodiment transfers the activities performed at the source electronic device from the source electronic device to the companion electronic device-a process that is referred to as "continuing" the activity in the companion electronic device. In the described embodiment, to perform the transfer, the source electronic device sends information describing the activities performed in the first application at the source electronic device to the accompanying electronic device. The companion electronic device then uses some or all of the information to configure the second application at the companion electronic device to perform the corresponding activity. In general, an activity includes one or more operations that are performed at least in part at the source electronic device, and the one or more operations are transferred to / continue on the companion electronic device. Examples of activities include reading and / or editing documents (such as word processing documents, spreadsheets, presentations or other types of documents), writing email messages, emails, voice messages or videos, drafting notes, accessing (browsing) websites, Watch movies, play audio files, or use applications or apps in other ways to perform corresponding operations. In some embodiments, when transferring activities from a source device to a companion device, the source electronic device first uses a wireless network interface (such as Bluetooth Low Energy (BLE), Zigbee, etc.) to broadcast an event announcement message (also known as " Upcoming Events"). In some embodiments, the source electronic device generates an activity identifier for the activity executed in the first application at the source electronic device and includes the activity identifier in the activity announcement message. The source electronic device generates an activity identifier by performing a set of operations (such as a hash operation, etc.) using activity information describing activities received from the first application. The following describes an example of event information in more detail with reference to FIG. 11. As the electronic device monitors the network for the activity announcement message on the network interface (eg, Bluetooth low energy network), the network interface corresponds to the network interface in the source electronic device from which the activity announcement is broadcast. After detecting the event announcement broadcast from the source electronic device, the companion electronic device compares the event identifier used for the event available at the companion electronic device with the event identifier in the event announcement message. The companion electronic device uses this comparison to determine whether a second application program that can execute an activity corresponding to the activity executed in the first application program is available at the companion electronic device. In some embodiments, after determining that the second application is available, the accompanying electronic device is established via a communication channel (eg, using the same wireless network interface or different network interface (wireless and / or wired) used to receive the event announcement message) Communication with the source electronic device. The accompanying electronic device then uses the communication channel to request the source electronic device for extended activity data for the activity performed in the first application. In some embodiments, after receiving the request for the extension activity data, the source electronic device uses the same (or different) communication channel to provide the extension activity data to the companion electronic device. Generally speaking, extended activity data includes information that can be used to configure the second application accompanying the electronic device to continue the activity, such as document identifiers, scrolling locations, and uniform resources related to activities performed in the first application Locator (URL), etc. In some embodiments, the companion electronic device uses the activity identifier and / or extended activity data to configure the second application to perform activities corresponding to the activities performed in the first application at the source electronic device. Then, the companion electronic device starts to perform activities in the second application at the companion electronic device. For example, after configuring the second application with the electronic device, the user can use the accompanying electronic device to continue working on the document that the user is working at the source electronic device, and continue to watch Movies, continue to browse web pages that users browse at source electronic devices, and so on. In some embodiments, the accompanying electronic device sends a notification to the source electronic device to indicate that the activity is transferred to the second application. The notification may enable the source electronic device and / or the first application to perform housekeeping tasks, such as deleting the draft document of the activity, closing the open document of the activity, and so on. In some embodiments, in addition to the activity identifier and / or extended activity data described above, the source electronic device forwards information related to the activity to the accompanying electronic device. For example, in some embodiments, the source electronic device forwards some or all of the contents of the copy and paste scrapbook (or "scrapbook") in the source electronic device to the accompanying electronic device. After receiving the information related to the activity, the accompanying electronic device provides the information related to the activity for performing the activity (eg, the transferred activity or other activities) in the accompanying electronic device. For example, in some or all of the embodiments in which the contents of the scrapbook are transferred from the source electronic device, the companion electronic device may use the contents of the scrapbook received from the source electronic device to overwrite the scrapbook in the companion electronic device Some or all of the existing content. In this way, the companion electronic device can make the contents of the scrapbook from the source electronic device (that is, information related to the activity) available to accompany the activity in the electronic device. For example, text, images, videos, sounds, files, fields, and / or text copied to (or otherwise placed in) the scrapbook (top) in the source electronic device can be made via the scrapbook accompanying the electronic device Or other information can be used to accompany activities in electronic devices. By performing the operations described above at the companion electronic device to continue the activities performed at the source electronic device, the described embodiments enable the user to continue tasks smoothly and without complex user intervention. This allows users to more easily perform tasks on the desired electronic device, which can improve the overall experience for users with two or more electronic devices.Electronic device FIG. 1 presents a block diagram illustrating an electronic device 100 according to some embodiments. The electronic device 100 includes a processing subsystem 102, a memory subsystem 104, a network connection subsystem 106, and a display subsystem 108. The processing subsystem 102 is a functional block that performs calculation operations in the electronic device 100. The processing subsystem 102 includes one or more central processing units (CPUs) / CPU cores, graphics processing units (GPUs) / GPU cores, embedded processors, application-specific integrated circuits (ASICs), and / or other computing mechanisms. The memory subsystem 104 is a functional block that stores data and / or commands for use by other functional blocks in the electronic device 100 (such as the processing subsystem 102, etc.). The memory subsystem 104 includes volatile memory circuits such as dynamic random access memory (DRAM), static random access memory (SRAM), and / or other types of memory for storing instructions and data, and The mechanism used to control the memory circuit. In some embodiments, the memory subsystem 104 includes a memory hierarchy with one or more cache memories coupled to the memory circuit. In some of these embodiments, the processing subsystem 102 also includes one or more cache memories that are part of the memory hierarchy. In some embodiments, the memory subsystem 104 is coupled to one or more non-volatile high-capacity mass storage devices (not shown). For example, the memory subsystem 104 may be coupled to a magnetic or optical disk drive, a solid-state drive, or another type of mass storage device. In these embodiments, the memory subsystem 104 can be used by the electronic device 100 as a fast-access storage for frequently used data, and a mass storage device is used to store less frequently used data. The network connection subsystem 106 is a function that includes one or more devices configured to couple to a wired and / or wireless network and communicate on the wired and / or wireless network (ie, to perform network operations) Block. For example, the network connection subsystem 106 may include BluetoothTM Network connection system, cellular network connection system (for example, 3G / 4G network such as UMTS, LTE, etc.), Universal Serial Bus (USB) network connection system, based on the description in IEEE 802.11, 802.15, etc. Standard network connection system (such as Zigbee or Wi-Fi network connection system, etc.), Ethernet network connection system and / or another network connection system. The network connection subsystem 106 includes a processor, controller, radio / antenna, socket / plug, and / or for coupling to each supported network connection system, communicating on each supported network connection system, and Handle other devices and data for each supported network connection system. In the following description, each network system's mechanism for coupling to the network, communicating on the network, and handling data and events on the network is collectively referred to as the "interface" or "network interface" of the network system . The display subsystem 108 is a functional block that includes one or more devices configured to display information on the visual interface of the electronic device 100. For example, in some embodiments, the display subsystem 108 includes a graphics processor (GPU), a graphics card, and / or a display screen for displaying information. In some embodiments, the communication path (including one or more bus bars, wires, and / or connections) is coupled between the functional blocks (processing subsystem 102, memory subsystem 104, etc.) in the electronic device 100, As shown by the arrows between the elements. Communication paths are used to transmit commands, data, event notifications, and / or other information between components. Although specific components are used to describe the electronic device 100, in some embodiments, different components and / or subsystems may exist in the electronic device 100. For example, the electronic device 100 may include one or more additional processing subsystems 102, memory subsystems 104, and so on. In addition, one or more of the subsystems may not exist in the electronic device 100 or some or all of the functions of the subsystems may be incorporated in other subsystems. Furthermore, in some embodiments, the electronic device 100 may include one or more additional subsystems not shown in FIG. 1. For example, the electronic device 100 may include, but is not limited to, a data collection subsystem, an audio and / or video subsystem, an alarm subsystem, a media processing subsystem, and / or an input / output (I / O) subsystem. The electronic device 100 may be any device that performs computing operations or may be included therein. For example, the electronic device 100 may be or be included in the following: desktop computer, laptop computer, wearable computing device, tablet computer, smart phone, server, network electrical equipment, toy, Audio visual equipment (such as receivers, set-top boxes, Apple TV, etc.), automobiles (such as car interface systems, navigation systems, head-up displays, etc.), household electrical equipment, controllers, etc. and / or combinations thereof. (Apple TV is a registered trademark of Apple Inc. of Cupertino, California).Network environment FIG. 2 presents a block diagram illustrating a network environment according to some embodiments. As can be seen in FIG. 2, the network environment 200 includes a source electronic device 202, a companion electronic device 204, and a second source electronic device 206 (collectively referred to as “electronic devices”). In some embodiments, each of the electronic devices is an electronic device similar to the electronic device 100, that is, has a subsystem similar to the electronic device 100. However, this is not required; the described embodiments may use any electronic device that can perform the operations described herein. The source electronic device 202 and the second source electronic device 206 are electronic devices that participate in the exchange with the accompanying electronic device 204 regarding the activity transfer operation. In some embodiments, the source electronic device 202 (and / or the second source electronic device 206) is an electronic device that is recognized by the companion electronic device 204 and thus is allowed to participate in the activity transfer operation. For example, both the source electronic device 202 and the accompanying electronic device 204 may have registered with the service provider using the same account and thus can recognize each other through the information stored in each electronic device. For example, in some embodiments, the source electronic device 202 and the accompanying electronic device 204 participate in a pre-pairing operation (eg, pre-defined pairing) (and recognize each other through information acquired through the pre-pairing operation), as by inventor Jason C . Conn, Akshay Mangalam Srivatsa, Craig P. Dooley and Michael Giles are described in the US Patent Application No. xx / xxx, xxx in the application on the same date as this application, the title of the case is "Predefined Wireless Pairing ", This case has the agent case number APL-P22642USP1, and its contents are incorporated by reference as described above. In some embodiments, the source electronic device 202 and the companion electronic device 204 may participate in the device-to-device exchange of identification factors (encryption keys, credentials, etc.) so that the source electronic device 202 and the companion electronic device 204 then recognize each other. In the network environment 200, the accompanying electronic device 204 can communicate with the source electronic device 202 and the second source electronic device 206 using a wireless communication signal 208 (illustrated using a zigzag line labeled "communication signal 208" in FIG. 2). In some embodiments, the communication signal 208 is formatted and exchanged according to the corresponding wireless protocol (eg, via wireless network protocols such as Bluetooth, Zigbee, 802.11-based protocols, and / or other wireless network protocols) (broadcast , Transmission / reception, etc.). In some embodiments, some or all of the communication signals 208 are transmitted as wired communication signals (eg, signals in wired Ethernet, wired LAN, wired WAN, etc.). In some embodiments, the activity transfer operation described herein relies on the source electronic device 202 and the accompanying electronic device 204 being sufficiently close to each other to enable the communication signal 208 (and therefore the incorporated message) sent by each electronic device Received by another electronic device. In other words, the source electronic device 202 and the accompanying electronic device 204 are "close" to each other, thereby enabling information exchange between the electronic devices. "Proximity" as used herein therefore means the distance that a message broadcast / transmitted from a given electronic device can be received by one or more other electronic devices. This distance is specified by the radio equipment (antenna, receiver / transmitter, etc.) in the electronic device and the specific radio protocol / signal used to broadcast / send messages, such as environmental conditions (electromagnetic interference, etc.), intermediate objects (furniture , Walls, clothes / bags, etc.). For example, in some embodiments, the communication signal 208 is exchanged between the source electronic device 202 and the accompanying electronic device 204 using an agreement with an expected range of 30 meters, and thus these devices are connected when the devices are within 30 meters of each other "Close" (however, note that the expected range can be significantly changed by the factors described above). 16 presents a block diagram illustrating electronic devices that are close to each other according to some embodiments. As can be seen in FIG. 16, the companion electronic device 204 is within the range 1602 of the radio signal (eg, the communication signal 208) of the source electronic device 202, meaning that the companion electronic device 204 can receive the radio signal sent from the source electronic device 202. In addition, the source electronic device 202 is within the range 1604 of the radio signal accompanying the electronic device 204 (for example, the communication signal 208), which means that the source electronic device 202 can receive the radio signal transmitted from the accompanying electronic device 204. Therefore, as described above, the source electronic device 202 and the accompanying electronic device 204 are "close" to each other, thereby enabling communication (and corresponding operation) of the messages described herein. However, neither the source electronic device 202 nor the companion electronic device 204 is within the radio signal range 1606 of the electronic device 1600, meaning that neither the source electronic device 202 nor the companion electronic device 204 is close to the electronic device 1600. It should be noted that the ranges 1602 to 1606 in FIG. 16 are displayed using irregular shapes, thereby illustrating that the radio signal from the electronic device has an irregular range, depending on the electronic device (antenna configuration, etc.), factors described above, etc. . In some embodiments, messages, data, etc. communicated between electronic devices are encrypted. In these embodiments, some or all of the electronic devices perform corresponding encryption and decryption operations, for example, by using a common key, a key obtained from the common key, and / or a one-time key. For example, as previously mentioned, in some embodiments, the source electronic device 202 and accompanying electronic device 204 are involved in the application by the inventors Jason C. Conn, Akshay Mangalam Srivatsa, Craig P. Dooley and Michael Giles. The pre-defined pairing described in US Patent Application No. xx / xxx, xxx in the application filed on the same date, the title of the case is "Predefined Wireless Pairing", the case has the agent case number APL-P22642USP1, and the The contents of the case are incorporated by reference as described above. In some embodiments, the source electronic device 202 and the companion electronic device 204 encrypt and decrypt the active transfer by using one or more encryption keys obtained by the source electronic device 202 and the companion electronic device 204 while participating in the predefined pairing Operate the exchanged messages. Although various electronic devices are shown in FIG. 2, in some embodiments, different configurations of electronic devices are used to perform some or all of the operations described herein. For example, in some embodiments, the second source electronic device 206 does not exist. In general, the described embodiments include sufficient devices to transfer activity between electronic devices as described herein.Broadcast event announcement message FIG. 3 presents a flowchart illustrating a processing procedure for broadcasting event announcement messages according to some embodiments. More specifically, during the processing procedure shown in FIG. 3, an electronic device such as the source electronic device 202 broadcasts an event announcement message. It should be noted that the operations shown in FIG. 3 are presented as general examples of operations performed by some embodiments. The operations performed by some embodiments include different operations and / or operations performed in different orders. In addition, although some mechanisms are used to describe operations (eg, source electronic device 202, etc.), in some embodiments, other mechanisms perform operations. For example, one or both of the electronic device 204 and the second source electronic device 206 can perform similar operations to broadcast their own activity announcement messages. The processing procedure shown in FIG. 3 starts when the source electronic device 202 receives the first application described at the source electronic device 202 (that is, the first application installed on the source electronic device 202 / available at the source electronic device 202 ) Activity information of the activity executed in) (step 300). (The following describes an example of event information in more detail with reference to FIG. 11). In some embodiments, the first application provides or reports activity information to the source electronic device 202, for example, provides or reports activity information to the operating system, wizard assistance program, or other processing procedures and / or services at the source electronic device 202. In some embodiments, the source electronic device 202 queries the first application for activity information. In general, activity information includes information describing activities performed at least in part using electronic devices. Examples of activities include reading and / or editing documents (such as word processing documents, spreadsheets, presentations or other types of documents), writing e-mail messages, drafting notes, accessing (browsing) websites, watching movies, playing audio files, Or use the application or app in other ways to perform the corresponding operation. Next, the source electronic device 202 determines whether to filter the received activity information (step 302), which includes using one or more criteria to discard activity information that should not undergo additional processing and / or should not be broadcast in the activity announcement message. For example, the source electronic device 202 can measure the frequency with which the first application provides updates to the activity information, and can discard the activity information from the first application (which can be (Referred to as "throttling" activity information from the first application). As another example, the source electronic device 202 may discard duplicates or duplicates that do not contain significant changes in previously reported activity information (eg, "unchanged" automatic reports, simple / basic operation / change reports, etc.) The fact that the source electronic device 202 knows, etc. activity information. As yet another example, in some embodiments, the source electronic device 202 filters activity information based on an indication that the activity described by the activity information does not want to be announced. For example, in some embodiments, the source electronic device 202 and / or the user of the source electronic device 202 may configure certain activities and / or certain types of activities as activities that do not want to be announced. As yet another example, in some embodiments, the source electronic device 202 sorts some or all activities (the activity information of such activities exists) (that is, some or all of the activities that can be announced) and discards these based on the ranking One or more of the activities. For example, the source electronic device 202 may assign a higher ranking to activities that the user previously continued and a lower ranking to activities that the user did not continue previously. In some of these embodiments, the source electronic device 202 uses the message from the companion electronic device 204 to determine which announcement activities were previously continued and which announcement activities were not previously, for example, such as described below with reference to step 510 of FIG. 5 Messages of other messages. If the source electronic device 202 filters (eg, discards) activity information (step 302, YES), the processing procedure ends. Otherwise, if the source electronic device 202 does not filter the activity information (step 302, No), the source electronic device 202 stores some or all of the activity information in the structure (step 304). For the purpose of illustration, I describe the embodiment where the activity information is stored in the input items in the table, and I refer to this table as the "announced activity" table. However, it should be noted that the embodiments are not limited to the use of tables for storing activity information. Some embodiments use different storage mechanisms / structures for storing activity information, such as associative arrays, content addressable memory, and so on. In some embodiments, while storing the activity information, the source electronic device 202 overwrites and / or removes the activity information previously stored in the announced activity table. For example, the source electronic device 202 may use the least recently used (LRU) algorithm to overwrite and / or remove input items from the announced activity list. An example of the announced activity table is described in more detail below with reference to FIG. Next, the source electronic device 202 determines the activity identifier used for the activity information (step 306). In general, the activity identifier includes information from activity information that identifies the first application and the activities performed in the first application. In some embodiments, the source electronic device 202 generates the activity identifier by reducing the activity information to a smaller encoded representation that can be broadcast more efficiently than the complete activity information. In some of these embodiments, the encoded representation is a hash of activity information, that is, the output of its input contains a hash function of the activity information (eg, MD4, MD5, SHA, MurmurHash, etc.). In some embodiments, the source electronic device 202 stores the activity identifier together with the activity information in the announced activity table (or any structure used by the source electronic device 202 to store the activity information). An example of the activity identifier is described in more detail below with reference to FIG. In some embodiments, the activity identifier includes a representation of the domain name. For example, in some embodiments, when the activity performed in the first application includes the use of resources at the domain, the activity information includes the domain name of the domain, such as at least a uniform resource locator (URL) portion. In some embodiments, the source electronic device 202 determines the activity identifier by including some or all of the domain names in the activity identifier. For example, the activity identifier may be a hash of some or all of the URL used for the resource. In some embodiments, the activity identifier identifies the input items in the structure where the source electronic device 202 stores activity information (eg, as described above with reference to step 304). For example, the activity identifier may identify the input item in the activity table of the announcement where the source electronic device 202 stores the activity information. The activity identifier may also include the identifier of the announced activity table itself. In some embodiments, to identify the input items in the structure in which the source electronic device 202 stores the activity information, the activity identifier includes: (1) a hash of the data in the announced activity table, which is used to identify the announced activity table, and (2) The index of the input items in the activity table of the announcement storing the activity information. The source electronic device 202 next includes the activity identifier in the activity announcement message (step 308). In some embodiments, in addition to the event identifier, the event announcement message also includes other data. For example, in some embodiments, the event announcement message includes a flag to indicate when the event identifier includes the domain name of the online resource related to the event. In these embodiments, the source electronic device 202 validates the flag (eg, sets the flag to a predetermined value such as 1) to indicate that the activity identifier includes a representation of the domain name. In some embodiments, the source electronic device 202 confirms the flag in the activity announcement message to indicate that the announcement activity can be provided by the source electronic device 202 separately to the accompanying electronic device 204 (eg, by the source electronic device 202 including the corresponding instruction Continue in the extension activity profile (described in more detail below). In some embodiments, the event announcement message includes a time stamp for the event / event information. The time stamp (which may represent an absolute time or a relative time) may indicate the last time the activity was performed in the first application, such as the last time to edit a document, access a website, watch a movie, etc. In some embodiments, the time stamp is independent of the activity / activity information, and the real-time stamp also indicates when the user last interacted with the source electronic device 202, regardless of whether the user's last interaction included the user performing the activity. The source electronic device 202 then broadcasts the event announcement message (step 310). For example, the source electronic device 202 may use the communication signal 208 to broadcast an event announcement message. In some embodiments, the source electronic device 202 broadcasts / announces the event announcement message in the network environment 200 so that nearby devices in the network environment 200 can receive the event announcement message. For example, in these embodiments, the source electronic device 202 uses Bluetooth such as Bluetooth Low Energy (BLE)TM Communication channel to broadcast event announcement messages. Some embodiments may broadcast event announcement messages on different communication channels (such as peer networks, LAN, Internet, etc.). It should be noted that event broadcasting may occur more than once, for example, the source electronic device 202 may broadcast the same event announcement message multiple times and / or periodically.Build available activity table In some embodiments, the companion electronic device 204 stores available activity information, for example, activity information describing activities available at the companion electronic device 204 (see FIG. 11 for an example of activity information described in more detail below). For example, in some embodiments, the accompanying electronic device 204 stores an activity identifier for available activity information. For illustrative purposes, I describe the accompanying electronic device 204 that stores available activity information in a table, which I refer to as the "available activity" table (an example of the available activity table is described in more detail later in the invention) . It should be noted that although we describe an embodiment that stores available activity information in an available activity table, the embodiment is not limited to using a table to store available activity information. Some embodiments may use other structures for storing available activity information, such as associative arrays, content addressable memory, and so on. 4 presents a flowchart illustrating a processing procedure for storing activity information describing activities available at the companion electronic device 204 into an available activity table according to some embodiments. It should be noted that the operations shown in FIG. 4 are presented as general examples of operations performed by some embodiments. The operations performed by some embodiments include different operations and / or operations performed in different orders. In addition, although some mechanisms are used to describe operations (eg, accompanying electronic device 204, etc.), in some embodiments, other mechanisms perform operations. For example, one or both of the source electronic device 202 and the second source electronic device 206 may perform similar operations to store available activity information describing activities available for itself. The processing procedure shown in FIG. 4 begins when the accompanying electronic device 204 receives activity information describing activities available at the second application at the accompanying electronic device 204 (eg, activity information describing activities that can be performed at the accompanying electronic device 204 ) (Step 400). In general, this activity information describes activities that can be performed in the second application at the companion electronic device 204, that is, operations or functions that the second application at the companion electronic device 204 can perform. In some embodiments, when the second application is installed and / or used, the second application reports / provides activity information. In some embodiments, the electronic device 204 queries or otherwise monitors the second application to collect activity information describing activities available at the second application. In some embodiments, the activity information includes activity information for activities that have not yet been executed on the companion electronic device 204 but are available for execution (eg, when the second application is installed / updated, activated, and used at the companion electronic device 204 Activity information reported by the second application at the same time). Next, the electronic device 204 determines the second activity identifier (that is, the activity identifier used to describe the activity information of the activity available at the second application) (step 402). Generally speaking, the second activity identifier identifies the second application and the activities available at the second application. The second activity identifier may be a coded representation of activity information describing activities available at the second application. In some embodiments, some of the same operations that accompany the electronic device 204 by executing the source electronic device 202 to generate an activity identifier (see FIG. 3, step 306) for the activity performed in the first application or All determine the second activity identifier. For example, in some embodiments, the companion electronic device 204 uses the same hash function to generate the second activity identifier used by the source electronic device 202 to generate the activity identifier for the activity performed in the first application. In some embodiments, when the second application can execute an activity that includes accessing resources at the domain, the activity information for this activity includes the domain name of the domain. In some of these embodiments, the second activity identifier is an encoded representation of the domain name, which enables the second application to "claim" the domain name, that is, to declare that the second application can use the domain name The resources are available so that the accompanying electronic device 204 can transfer the corresponding activities to the second application. For example, as will be described later, in the case where the second application streams movies from a specific site on the Internet, the second activity identifier may be at least some of the domain name of the site The encoded representation of the part. It should be noted that the second application may be different from the first application (ie, the application whose activity is announced in the event announcement message), so that the application different from the first application can continue to be active at the accompanying electronic device 204. Next, the electronic device 204 stores the second activity identifier in the available activity table (step 404).Request for extension activities and transfer activities In some embodiments, after receiving the event announcement message, the electronic device may request extended event data for the announced event so that the announced event can then be transferred to the electronic device. FIG. 5 presents a flowchart illustrating a processing procedure for requesting extension activity data and transferring activities according to some embodiments. More specifically, during the processing procedure shown in FIG. 5, accompanying electronic device 204 requests source electronic device 202 for extended activity data for activities performed in the first application in source electronic device 202. It should be noted that the operations shown in FIG. 5 are presented as general examples of operations performed by some embodiments. The operations performed by some embodiments include different operations and / or operations performed in different orders. Additionally, although certain mechanisms are used to describe operations (eg, source electronic device 202, accompanying electronic device 204), in some embodiments, other electronic devices and / or mechanisms perform the operations. The processing procedure shown in FIG. 5 starts when the electronic device 204 receives an event announcement message (step 500), such as an event announcement message broadcast from the source electronic device 202 (see FIG. 3, step 310). Next, the companion electronic device 204 determines whether the companion electronic device 204 is in the receiving state (step 502). Generally speaking, the companion electronic device 204 is in the receiving state when it is available for performing activity transfer. For example, in some embodiments, the accompanying electronic device 204 transitions to the receiving state when the device "wake up" (eg, when the user presses the button to wake up the device to display the lock screen). In some embodiments, the companion electronic device 204 is when the companion electronic device 204 is in use (eg, when the user is using the application at the companion electronic device 204 and / or when the user has used the application within a given period of time Program) is not in the receiving state. If the accompanying electronic device 204 is not in the receiving state (step 502, No), the processing procedure ends (that is, the activity announcement message is ignored). Otherwise, if the companion electronic device 204 is in the receiving state (step 502, YES), the companion electronic device 204 determines whether the second application associated with the first application is available at the companion electronic device 204 (step 504). Generally speaking, this operation includes determining whether the application is available on the companion electronic device 204 to continue the activity described in the activity announcement message from the source electronic device 202. The determination of whether the second application is available is described in more detail later with reference to FIGS. 7 to 8. If the second application is not available (step 504, No), the processing procedure ends. Otherwise, if the second application is available (step 504, YES), the electronic device 204 accompanies the activity information for the second application (step 506). For example, as will also be described in more detail with reference to FIGS. 7-8 and 11-12, after determining the second application, the accompanying electronic device 204 may use the activity identifier for the second application to The activity information describing the activities available in the second application is retrieved from the available activity table (or another structure used by the accompanying electronic device 204 to store the available activity information). In some embodiments, accompanying electronic device 204 uses the retrieved activity information (eg, using the application identifier in the retrieved activity information) to customize the indication that the activity is recoverable, such as referring to step 508 and / or as follows Or described in Figure 14. Refer to FIG. 11 to describe the application identifier in more detail. Next, the electronic device 204 presents an indication that the activity system is recoverable (step 508). For example, the companion electronic device 204 may present graphical icons and / or notifications in the display of the companion electronic device 204. The instructions are described in more detail below with reference to FIG. 14. Next, the electronic device 204 determines whether the activity transfer is accepted (step 510). In some embodiments, the user accompanying electronic device 204 accepts and performs actions by performing instructions on the instruction (such as clicking on the instruction, dragging the instruction in one or more directions, and / or to one or more specific locations, etc.) / Or refuse to transfer the event. For example, to accept activity transfer, users can use their fingers (on the touchscreen display) to tap the icon / notification and in the first direction (eg left to right, upward, clockwise in a circle, etc.) ), Drag icons / notifications. As another example, to reject the activity, the user may use a finger to touch the icon / notification and drag the icon / notification in a second direction (eg, right-to-left, down, in a counterclockwise direction, etc.). In some embodiments, the companion electronic device 204 determines that the activity transfer is not accepted based on a timeout period (ie, by determining that a period of time has elapsed since the indication was presented without a user performing an action to accept the indication / activity transfer). If the activity transfer is not accepted (step 510, No), the processing procedure ends. It should be noted that in some embodiments, if the activity transfer is not accepted, the accompanying electronic device 204 sends a message to the source electronic device 202 to indicate that the activity transfer is not accepted. If the activity transfer is accepted (Yes in step 510), the accompanying electronic device 204 sends a message to the source electronic device 202 to request extended activity data for the activity executed in the first application (step 512). In general, the request for extension activity data includes information used to facilitate the source electronic device 202 to determine the activity for which the extension data is being requested. For example, in some embodiments, the companion electronic device 204 includes an event identifier from an event announcement message with a request to extend event data. Next, after receiving the extension activity data from the source electronic device 202 in response to the request for the extension activity data, the accompanying electronic device 204 configures the second application using the extension activity data (step 514). Configuring the second application may include starting / starting the second application, setting the state of the second application based on the extended activity data (or causing the state to change), and otherwise configuring the second application to perform the corresponding operation. For example, the accompanying electronic device 204 may pass a document / resource identifier, information representing the document / resource, and / or a reference to the document / resource in the extended activity data to the second application to enable the second application to access Documents / resources (for example, an identifier of a cloud storage document accessed by a second application from a cloud-based storage located on the Internet / information representing the cloud storage document / reference to the cloud storage document, for The identifier of the document retrieved from the database by the second application / information representing the document / reference to the document, etc.). In some embodiments, when the activity includes writing a document stored at the source electronic device 202, the extended activity data includes the document or information representing the document, thereby enabling the accompanying electronic device 204 and / or the second application to accompany The electronic device 204 uses / regenerates the document for the second application. In some embodiments, the extended activity data includes edits in the document, such as the location and / or content of the edits in the document. In some embodiments, the extended activity data includes location information, such as the last playback / viewing / recording location in the media file (that is, the location in the media file where playback or recording stopped or was last performed), the location of the logo in the file, The position / state of the game in the video game (e.g. the last level played, the coordinates of the player ’s last position, the scores and / or achievements won, and / or can be used to reproduce the source electronic device at the accompanying electronic device 204 Information on the state of the game played on 202), etc. Next, the companion electronic device 204 starts to execute activities in the second application (step 516), which usually includes starting / launching the second application at the companion electronic device 204 (if the second application has not been executed) and based on the extended activity data The second application program is executed at the companion electronic device 204. For example, the accompanying electronic device 204 can cause the second application to start executing in the viewing and / or editing mode for the document related to the announcement activity, and can cause the second application to scroll into the document at the source electronic device 202 Last position to view / edit files. Next, accompanying the electronic device 204 sends a notification indicating that the activity is transferred to the source electronic device 202 (step 518). It should be noted that some embodiments may use the information in the event announcement message (such as an event identifier) to start configuring the second application while the extended event data is being transmitted or even before the extended event data is requested. Some of these embodiments use the information in the event announcement message to set the initial background for the second application and set the mode for the second application (eg, edit mode, read-only mode, email writing mode, notes Write mode, etc.). Therefore, some embodiments may start and / or configure the second application before receiving extended activity data (perhaps once the activity transfer is accepted), thereby improving the slow network by hiding the data transmission time with the application startup time Effectiveness in the road. In some embodiments, the accompanying electronic device 204 uses a signal different from the communication signal 208 and / or sends the extension by using a communication channel / network interface different from the communication channel / network interface on which the activity announcement message is received Activity information request. For example, the companion electronic device 204 can receive an event announcement message via a Bluetooth link (using the BLE protocol) and can request extension of event data via a Wi-Fi link or the Internet. In these embodiments, the source electronic device 202 and the accompanying electronic device 204 use a communication signal 208 (eg, Bluetooth link) to exchange information that enables the electronic device to communicate via different communication channels / networks. For example, in some of these embodiments, the electronic device 204 establishes a peer-to-peer network (such as a dedicated Wi-Fi network) and provides information to access the peer-to-peer network to the source electronic device 202 . In some embodiments, the source electronic device 202 provides extended activity data to the server and accompanies the electronic device 204 to receive the extended activity data from the server, for example, via the Internet.Transfer to receiving status based on announcement information Although FIG. 5 describes an embodiment of receiving an activity announcement message (FIG. 5, step 500) and determining whether the accompanying electronic device 204 is in a receiving state (FIG. 5, step 502), some embodiments are based on the received activity announcement message The information is transferred to the receiving state. In some of these embodiments, after receiving the activity announcement message (eg, as shown in FIG. 5, step 500), the accompanying electronic device 204 does not determine whether the accompanying electronic device 204 is in the receiving state, that is, FIG. 5 The processing procedure shown in step 5 continues from step 500 to step 504 without performing the operation of step 502. For example, in some embodiments, the source electronic device 202 uses a low power protocol (such as Bluetooth Low Energy (BLE), Zigbee, etc.) to broadcast an event announcement message via the corresponding communication signal 208. Devices such as companion electronic devices 204 can use corresponding low-power mechanisms (such as corresponding baseband processors in the network interface, such as the baseband processors in the network connection subsystem 106) to monitor activities broadcast from the source electronic device 202 Announcement message. In some of these embodiments, the reception of the activity announcement message is handled by the companion electronic device 204 using only the baseband processor of the companion electronic device 204, which means that the companion electronic device 204 can additionally be in an idle state ( For example, a subsystem such as a processing subsystem is in a low power state). For example, in some embodiments, the companion electronic device 204 may be a smart phone in an idle state in the user's pocket, in which the baseband processor monitors activity announcement messages while processing the subsystem (and It usually accompanies the electronic device 204) in a low power state. In some embodiments, after such recognition of the activity announcement message, the baseband processor wakes up the processing subsystem (and can usually move the accompanying electronic device 204 out of the idle operating state to a higher power / more active operating state) to execute Follow-up operation. For example, in some embodiments, the accompanying electronic device 204 can monitor the activity announcement message and react to the activity announcement message as described in the pending US Patent Application No. xx / xxx, xxx, which is achieved by The inventors Craig P. Dooley, Akshay Mangalam Srivatsa, Anjali S. Sandesara and Michael Giles applied on the same date as this application. The title of the case is "Operating Mode Transitions based on Advertising Information", which has an agent case number APL- P22643USP1, and it is incorporated by reference as described above. In some embodiments, the companion electronic device 204 / smartphone may not need to be removed from the user's pocket and activated to place the companion electronic device 204 in the receiving state.Respond to requests for information on extension activities FIG. 6 presents a flowchart illustrating a processing procedure for responding to requests for extended activity data according to some embodiments. More specifically, during the processing procedure shown in FIG. 6, the electronic device such as the source electronic device 202 responds to the request for the extended activity data from the electronic device such as the companion electronic device 204. It should be noted that the operations shown in FIG. 6 are presented as general examples of operations performed by some embodiments. The operations performed by some embodiments include different operations and / or operations performed in different orders. Additionally, although certain mechanisms are used to describe operations (eg, source electronic device 202, accompanying electronic device 204), in some embodiments, other electronic devices and / or mechanisms perform the operations. The processing procedure shown in FIG. 6 starts when the source electronic device 202 receives a request for extension activity data (step 600), for example, as described with reference to step 512 in FIG. 5, accompanying the request for extension activity data transmitted by the electronic device 204 . Next, the source electronic device 202 uses the information in the request for extension activity data to determine that the request is extension activity data for the first application (step 602). For example, as previously mentioned, the request for extending event data may include an event identifier from the event announcement message (see step 308 in FIG. 3). In some embodiments, the source electronic device 202 performs a search for the activity identifier in the announcement activity table (or other structure in which the announced activity information is stored; the example of the announcement activity table is described in more detail below with reference to FIG. 12). When the source electronic device 202 finds an input item that includes an activity identifier in the announced activity table from the activity announcement message, the source electronic device 202 can retrieve the activity information of the input item, for example, by determining the application identifier of the input item It is determined that the activity identifier corresponds to the first application for the application identifier of the first application (refer to FIGS. 11 to 12 for more detailed examples of activity information and application identifiers). Next, the source electronic device 202 sends notifications / requests to the first application as needed to perform activity-related updates (step 604). In some embodiments, the notification causes the first application to update the extended activity data before providing the extended activity data to the companion electronic device 204. For example, the first application may use the notification to update the last scrolling / viewing position of the document related to the event and / or perform the activity-related completion operation before transferring the event, such as storing the document related to the event, to The latest drafts of the documents related to the event update the extended event information, etc. Next, the source electronic device 202 retrieves extended activity data for the first application (step 606). In some embodiments, the source electronic device 202 requests the first application to provide extended activity data. In some embodiments, the first application provides extended activities along with some or all of the initial activity information (see FIG. 3, step 300) and / or periodically reports extended activity information (eg, everyN Second report, whereN For numbers such as 1, 3, etc., whenever an event occurs in the first application (such as when the document is stored in the first application, the movie being watched is paused in the first application, etc.), the extension activity information ). Next, the source electronic device 202 sends the extended activity profile to the accompanying electronic device 204 (step 608). Generally speaking, the extended activity data includes information that can be used to configure the second application to continue the activity, such as a document identifier (and / or information representing the document) that identifies the document used for the activity performed in the first application, Such as references to documents), uniform resource location (URL) of web pages accessed / browsed in the first application (and / or information representing web pages / URLs, such as references to web pages / URLs), location information (e.g. Indication of the last viewed / scrolled position in the document or web page, the last played position in the video game, etc.), at the source electronic device 202 and / or available on the Internet (e.g. "cloud storage") Or a copy of the draft document (and / or information representing the draft document, such as a reference to the draft document) stored in a storage device accessed on the company network. Next, the source electronic device 202 receives a notification that the activity is transferred (step 610), for example, a notification sent by the accompanying electronic device 204 as described with reference to step 518 of FIG. In some embodiments, in response to receiving the notification, the source electronic device 202 notifies that the first application activity is transferred (step 612). In some embodiments, the source electronic device 202 and / or the first application program performs one or more operations related to the activity based on receiving the notification, such as deleting the document / document draft stored locally, closing the opened document, and closing the application Housekeeping tasks such as programs. In some embodiments, the source electronic device 202 uses a signal different from the communication signal 208, and / or by using a communication channel / network interface other than the one on which the event announcement message and / or the request to extend the event data are communicated The communication channel / internet interface provides extended event data. For example, the source electronic device 202 may receive a request for extended activity data via a Bluetooth link and may provide extended activity data via a Wi-Fi link or the Internet.Secure communication using cloud pairing As discussed earlier, in some embodiments, electronic devices that perform activity transfer operations participate in pre-pairing operations, such as "cloud pairing" operations, such as by inventors Jason C. Conn, Akshay Mangalam Srivatsa, Craig P. Dooley, and Michael Giles' pre-defined pairing described in US Patent Application No. xx / xxx, xxx in the application filed on the same date as this application, the title of the case is "Predefined Wireless Pairing", and the case has the agent case number APL -P22642USP1, and the contents of the case are incorporated by reference as described above. In some embodiments, the electronic device uses security information acquired during the cloud pairing operation (eg, using an encryption key acquired during the cloud pairing operation) to encrypt and decrypt messages exchanged with each other for performing the activity transfer operation. For example, in some embodiments, the source electronic device 202 uses the encryption key obtained during the cloud pairing operation performed by the source electronic device 202 and the accompanying electronic device 204 to encrypt the activity announcement message (see FIG. 3, step 310) and / Or extend the activity data (see Figure 6, step 608). In some embodiments, the companion electronic device 204 uses the same security information, different security information acquired during the cloud pairing operation performed by the companion electronic device 204 and the source electronic device 202, and / or the security obtained during the cloud pairing operation The information encrypted by the sex information is for the request to extend the activity data (see FIG. 5, step 512) and / or the notification that the activity is transferred (see FIG. 5, step 518).Use the activity identifier to determine the second application As previously mentioned, in some embodiments, the electronic device determines whether the second application associated with the first application is available in the electronic device (to facilitate the possible transfer of activities to the electronic device). 7 presents a flowchart illustrating a processing procedure for determining whether a second application is available at the companion electronic device 204 according to some embodiments. The operations shown in FIG. 7 may be performed during the processing procedure shown in FIG. 5 (eg, at step 504). It should be noted that the operations shown in FIG. 7 are presented as general examples of operations performed by some embodiments. The operations performed by some embodiments include different operations and / or operations performed in different orders. In addition, although some mechanisms are used to describe operations (eg, accompanying electronic device 204, etc.), in some embodiments, other mechanisms perform operations. For example, one or both of the source electronic device 202 and the second source electronic device 206 may perform similar operations to determine whether the second application is available. The processing procedure shown in FIG. 7 starts with the electronic device 204 determining whether the flag in the activity announcement message is confirmed (step 700). As previously mentioned, in some embodiments, the source electronic device 202 confirms that the flag in the event announcement message indicates that the event identifier is / contains a representation of the domain name used for the announced event. In some of these embodiments, the accompanying electronic device 204 determines that the activity announcement message includes a representation of the domain name by determining that the flag is confirmed. The flag will be described in more detail later in this specification with reference to FIGS. 11 and 13, for example. If the flag in the event announcement message is confirmed (step 700, YES), then the electronic device 204 processes the flag (step 702). The processing of the flag that occurs at step 702 will be described later with reference to FIG. 8. Some embodiments repeat step 702 for each confirmation flag in the activity announcement message (ie, the processing described with reference to FIG. 8), for example, when the activity announcement message includes two or more confirmation flags The handling of each confirmation flag. If the event announcement message does not contain a confirmed flag (step 700, No), the accompanying electronic device 204 compares the event identifier from the event announcement message with the event identifier for the event available at the accompanying electronic device 204 (step 704). For example, the companion electronic device 204 can look up the activity identifier from The event identifier of the event announcement message. If the search for the activity identifier finds a match in the input items in the available activity table (step 706, YES), the electronic device 204 determines that the second application is an application whose activity identifier is stored in the other input item (step 708) ). If the search activity identifier does not find a match in the available activity information (step 706, No), the accompanying electronic device 204 determines that the application associated with the first application is not available at the accompanying electronic device 204 (step 710).Use the flag to determine the second app As previously mentioned, some embodiments confirm the flag in the event announcement message. 8 presents a flowchart illustrating a processing procedure for determining a second application using flags according to some embodiments. More specifically, FIG. 8 presents a flowchart illustrating the processing procedure accompanying the electronic device 204 at step 702 of FIG. 7. It should be noted that the operations shown in FIG. 8 are presented as general examples of operations performed by some embodiments. The operations performed by some embodiments include different operations and / or operations performed in different orders. In addition, although some mechanisms are used to describe operations (eg, accompanying electronic device 204, etc.), in some embodiments, other mechanisms perform operations. For example, one or both of source electronic device 202 and second source electronic device 206 may perform similar operations on their own. The processing procedure shown in FIG. 8 starts when the electronic device 204 determines that the application corresponds to the flag (step 800). In some embodiments, the accompanying electronic device 204 uses the location of the confirmation flag and / or the value of the flag to determine the application corresponding to the flag. For example, when the activity announcement message includes more than one flag that can be verified, each of the flags can be used to identify different applications that can be used to continue the activity. In some embodiments, the flag is a multi-bit field and different values of the multi-bit field identify different applications. In some embodiments, the accompanying electronic device 204 stores the mapping of the application corresponding to the location / value of the identification flag. Next, the companion electronic device 204 determines whether the application corresponding to the flag is available at the companion electronic device 204 (step 802). For example, the companion electronic device 204 may check whether the application corresponding to the flag is installed at the companion electronic device 204. In some embodiments, step 802 is not executed / skipped, so that the processing procedure shown in FIG. 8 continues from step 800 to step 804. For example, step 802 is not performed in an embodiment that uses flags to only identify pre-installed applications that are known to be available at the companion electronic device 204 and that cannot be uninstalled by the user. If an application corresponding to the flag is available (step 802, YES), the electronic device 204 determines that the second application is an application corresponding to the flag (step 804). The processing procedure then ends, which may include continuing to step 506 in FIG. 5. If the application corresponding to the flag is not available at the accompanying electronic device 204 (step 802, No), the processing procedure ends. At this time, the accompanying electronic device 204 may determine that the second application is unavailable (for example, as shown in step 504 in FIG. 5, No), or may continue to step 704 in FIG. 7 to determine the first by using the event identifier from the event announcement message Second, whether the application is available. In some embodiments, the process shown in FIG. 8 allows applications other than the first application to continue to be active at the companion electronic device 204. For example, consider a situation where the first application is a web browser and the activities performed in the first application include browsing a social media website. In this example, the second application may be a social media app that accesses resources (eg, social media user pages, etc.) accessed in the first application / web browser (that is, the second application is app and not a web browser). By using flags, these embodiments can configure the social media app to continue activities performed at the social media website at the same point where the web browser stopped. As another example, in some embodiments, the first application is an independent media streaming app (such as a media player app) that streams movies from a website and the second application is a web browser that can stream movies Device. By using flags, these embodiments configure the web browser to continue playing the movie, which may include using extended event data for the event so that the web browser continues to play the movie where the media streaming app stops. In some embodiments, the source electronic device 202 sets a second flag (or a different value for the flag) in the activity announcement message to indicate that the source electronic device 202 will then provide information on how to continue the activity at the companion electronic device 204 Instructions / information. In some embodiments, the application corresponding to the flag contains instructions / information on how to continue activities at the companion electronic device 204. In some embodiments, the extended activity data provides instructions / information for continuing activities at the companion electronic device 204.Use the structure of the stored announcement activity to determine the second application As described above with reference to FIG. 3, in some embodiments, the activity identifier in the activity announcement message identifies an input item in a structure (eg, a table), and the electronic device that announces the activity stores the activity information used for the announcement activity in the structure in. 9 presents a flowchart illustrating a process for determining whether a second application is available when an activity identifier recognizes an input item in this structure according to some embodiments. More specifically, during the processing procedure shown in FIG. 9, the electronic device 204 uses the activity identifier of the input item in the recognized announcement activity table (in which the source electronic device 202 stores the activity information for the announcement activity) to determine Whether a second application program associated with the first application program is available at the companion electronic device 204 (an example of an announcement activity table is described in more detail below with reference to FIG. 12). It should be noted that the operations shown in FIG. 9 are presented as general examples of operations performed by some embodiments. The operations performed by some embodiments include different operations and / or operations performed in different orders. Additionally, although certain mechanisms are used to describe operations (eg, source electronic device 202, accompanying electronic device 204), in some embodiments, other electronic devices and / or mechanisms perform the operations. The processing procedure shown in FIG. 9 starts when the electronic device 204 receives an activity identifier that identifies an input item in a bulletin activity table in which the source electronic device 202 stores activity information for a bulletin activity (step 900). In some embodiments, the activity identifier includes a table identifier and an input item index, the table identifier identifies the announcement activity table in which the source electronic device 202 stores the activity information for the announcement activity, and the input item index is identified by the table identifier The entry items in the identified announcement activity table that store activity information for announcement activities. In some embodiments, the table identifier is a hash of the announcement activity table data. Next, the companion electronic device 204 determines whether the announcement activity table for the activity identifier is available at the companion electronic device 204 (step 902). In some embodiments, the companion electronic device 204 uses the table identifier from the activity identifier to determine whether the companion electronic device 204 stores a local copy of the announcement activity table. If the announcement activity table for the activity identifier is not available at the accompanying electronic device 204 (step 902, No), the accompanying electronic device 204 retrieves the announcement activity table from the source electronic device 202 (step 904). In some embodiments, the accompanying electronic device 204 requests the source electronic device 202 to send the announcement activity table identified by the activity identifier from the activity announcement message, such as the announcement activity table identified by the table identifier. Using the communication signal 208 and / or different communication signals / different channels, the accompanying electronic device 204 can transmit this request, and the source electronic device 202 can respond to the request. In some embodiments, the electronic device 204 periodically synchronizes the local copy / multiple copies of its announcement activity table with the source electronic device 202. For example, the accompanying electronic device 204 may use a "push" mechanism (ie, without sending a request for a copy of the announcement activity table) to receive a copy of the announcement activity table from the source electronic device 202. If the announcement activity table for the activity identifier is available at the accompanying electronic device 204 (step 902, Yes), or after receiving the announcement activity table from the source electronic device 202, the accompanying electronic device 204 uses the activity identifier to The activity information is retrieved from the announcement activity table (step 906). For example, the companion electronic device 204 can retrieve activity information from the input items identified by the input item index in the announcement activity table. In some embodiments, the operations shown in FIG. 9 enable information describing more than one event to be announced in a single event announcement message. For example, consider a case where the size of the event announcement message is limited due to, for example, the limitation of the network protocol used to broadcast the event announcement message. In this case, the input item identifier (that is, the activity identifier that identifies the input item in which activity information is stored) may be smaller than the encoded representation (that is, the activity identifier generated from the same activity information) (for example, use less than The activity identifier is represented in bits) so that these embodiments can carry multiple input item identifiers in the activity announcement message. As previously described with reference to FIG. 3, the described embodiments are not limited to the use of tables for storing available activity information. Some embodiments use different structures for storing available activity information, such as associative arrays, content addressable memory, and so on. In these embodiments, the activity identifier may identify input items in the structure in which the source electronic device 202 stores activity information used to announce the activity. For example, in these embodiments, the table identifier can identify the structure and the input item index can identify the index in the structure where the source electronic device 202 stores the activity information used to announce the event. In addition, although we describe an embodiment that uses one announcement activity table, some embodiments use more than one announcement activity table, for example, storing event information for announcement activities in different announcement activity tables.Determine recent activity As described above, the network environment 200 may include the second source electronic device, which may broadcast an activity announcement message for activities performed at the second source electronic device. As also described earlier, some embodiments include a timestamp in the event announcement message to indicate when the event announced in the event announcement message was last executed. FIG. 10 presents a flowchart illustrating a processing procedure for determining the most recent activity from two or more activity announcement messages according to some embodiments. More specifically, during the processing procedure shown in FIG. 10, the electronic device 204 uses the timestamp included with the announcement from the source electronic device 202 ("event announcement") and the announcement from the second source electronic device 206 ("Second Event Announcement") A time stamp included together to determine the nearest of the events announced in the event announcement and the second event announcement. It should be noted that the operations shown in FIG. 10 are presented as general examples of operations performed by some embodiments. The operations performed by some embodiments include different operations and / or operations performed in different orders. Additionally, although certain mechanisms are used to describe operations (eg, source electronic device 202, companion electronic device 204, second source electronic device 206), in some embodiments, other electronic devices and / or mechanisms perform operations. For the processing procedure shown in FIG. 10, it is assumed that the accompanying electronic device 204 has received the activity announcement from the source electronic device 202, for example, as shown in FIG. Therefore, the accompanying electronic device 204 has an event announcement, including the first time stamp included with the event announcement. The processing procedure shown in FIG. 10 starts when the electronic device 204 receives the second event announcement (step 1000). Next, the electronic device 204 compares the first time stamp included with the event announcement with the second time stamp included with the second event announcement (step 1002). For example, the companion electronic device 204 may compare timestamps to understand which one is newer (ie, indicates the most recent time). If the comparison indicates that the first timestamp is newer (step 1004, YES), then the electronic device determines that the activity performed in the first application (that is, the activity announced in the activity announcement) is the most recent activity (step 1006). Otherwise, if the comparison indicates that the second timestamp is newer (step 1004, No), the electronic device 204 determines the activity to be executed in the second application (that is, the activity announced in the second activity announcement) Is the most recent activity (step 1008). In some embodiments, the companion electronic device 204 reduces presentation to the user on the display of the companion electronic device 204 (eg, as shown in FIG. 14) by only presenting an indication that the activity is recoverable for the most recent of the announcement activity The number of instructions. In some embodiments, the timestamp is used with the electronic device 204 to present an indication of recoverable activities in order, such as presenting the most recent activity first, followed by presenting other announcement activities in descending order based on relative recentness. In such embodiments, two or more indications may be presented side by side according to the relative recentness of the corresponding activity, one above the other, and so on. In some embodiments, the electronic device 204 uses a history of previously resumed activities to present an indication of recoverable activities in order. In some embodiments, the accompanying electronic device 204 prioritizes previously resumed activities, that is, an indication of a resumeable previously resumed activity is presented before an instruction of a resumeable previously not resumed activity. In some embodiments, two or more indications are presented in order based on the number of times each of the corresponding activities has previously continued.Activity Information As previously mentioned, some embodiments use activity information describing activities performed at the electronic device. 11 presents a block diagram illustrating activity information 1100, activity information 1110, and activity information 1120 according to some embodiments. It should be noted that the event information 1100, event information 1110, and event information 1120 shown in FIG. 11 are presented as a general example of the format of event information used by some embodiments. Some embodiments use different formats and / or different information included in the event information. The activity information 1100 includes an application identifier 1102 that identifies an application used to execute the activity described in the activity information 1100. For example, the application identifier 1102 (which includes the stringcom . apple . Keynote ) Identify the application Keynote, which is an application that can be used to edit and view presentations. Activity descriptor 1104 includes a stringEditPresentation , Which recognizes activities performed using the application Keynote as editing presentations. The time stamp 1106 (which includes the string / number 103) identifies the last time the activity was performed, for example, the last time the user edited the presentation in the keynote application. The timestamp may indicate the actual time at which the activity was last executed (eg, wall clock time (or its representation, such as system time)), or it may be a representation of the time elapsed since the activity was last executed after the hour or since the synchronization event. In some embodiments, the timestamp indicates the actual time (eg, absolute / wall clock time (or its representation, such as system time)) of the source electronic device 202 was last used (eg, actively used by the user), or it may be A representation of the time elapsed since the source electronic device 202 was last used after the hour or since the synchronization event. In the event information 1100, the flag 1108 was not confirmed. The event information 1110 includes an application identifier 1112 that identifies the application used to execute the activity described in the event information 1110. For example, the application identifier 1112 (which includes the stringcom . apple . Mail ) Identify the application Mail (an application that can be used to write and send e-mail messages). Activity descriptor 1114 includes a stringComposeDraft To identify the activities performed using the application Mail including writing message drafts. The timestamp 1116 (which includes the string / number 315) identifies the last time the activity was performed, for example, the last time the user used Mail to write a draft. The flag 1118 used for event information 1110 has not been confirmed. The event information 1120 includes an application identifier 1122 that identifies the application used to execute the activity described in the event information 1120. For example, the application identifier 1122 (which includes the stringcom . apple . Safari ) Identify the application Safari (web browser). Activity descriptor 1124 includes a stringwww . evideostreamer . com , Which identifies the domain name accessed using a web browser. In this example, the activity descriptor 1124 retains the domain name, so the flag 1128 in the activity information 1120 is the verified flag 1128 to indicate that the activity description 1124 includes the domain name. The timestamp 1126 (which includes the string / number 820) identifies the last time the web browser used to access the mobile streaming website. The activity information 1130 includes an application identifier 1132 that identifies the application used to execute the activity described in the activity information 1130. For example, the application identifier 1132 (which includes the stringcom . CompanyA . MediaPlayer ) Identify the application MediaPlayer (which in this example is the developerCompanyA Development) (which is an application that can be used to play and record multimedia content). Activity descriptor 1134 includes a stringPlayVideo To identify the activities performed using the application MediaPlayer include playing video (ie, video playing). The timestamp 1136 (which includes the string / number 902) identifies the last time the activity was executed, for example, the last time the user used MediaPlayer to play the video. The flag 1138 used for event information 1130 has not been confirmed. For illustrative purposes, the timestamp shown in FIG. 11 is calculated as the increment (difference) since the synchronization event (eg, hour). Therefore, in the example shown in FIG. 11, the activity described using the activity information 1100 is the most recent activity. This is because the timestamp 1106 indicates that the minimum amount of time has elapsed since the hour since the activity described using the activity information 1100 was performed. . It should be noted that although the example shown in FIG. 11 uses strings for application identifiers and activity descriptors, some embodiments may use different information to identify applications and / or activities. For example, some embodiments use digital identifiers for application identifiers and / or activity descriptors. In some embodiments, the application identifier is the identifier of the corresponding application in the online "app store". In some embodiments, the application identifier includes some or all of the bundle identifier (eg, bundle ID). Additionally, although the application identifier shown is separate from the activity descriptor, some embodiments combine the application identifier and activity descriptor in a single identifier. In some embodiments, application / app developers provide information for activity descriptors such as activity descriptor 1104, activity descriptor 1114, activity descriptor 1124, and activity descriptor 1134. In these embodiments, the developer of the application / app can determine certain activities for the application / app and can provide relevant values of the activity descriptor.Announcement activity table FIG. 12 presents a block diagram illustrating an announcement activity table 1200 according to some embodiments. As described above, the announcement activity table 1200 includes information about activities that have been announced (that is, activities whose activity announcement messages have been sent by electronic devices such as the source electronic device 202). It should be noted that the announcement activity table shown in FIG. 12 is presented as a general example of the announcement activity table used by some embodiments. Some embodiments represent the event information in different ways and / or include more or less information in the announcement event table. The input item 1202 (which is identified by the input item index 1206) stores the activity information 1100 and the activity identifier 1204. In this example, the activity identifier 1204 uses the application identifier 1102 and the activity descriptor 1104 (such as the string "com . apple . Keynote :: EditPresentation "Hash"). The input item 1212 (which is identified by the input item index 1216) stores the event information 1110 and the event identifier 1214. In this example, the activity identifier 1214 uses the application identifier 1112 and the activity descriptor 1114 (such as the string "com . apple . Mail :: ComposeDraft "Hash"). The input item 1222 (which is identified by the input item index 1226) stores the event information 1120 and the event identifier 1224. In this example, an activity identifier 1124 (such as a hash of the string www.evideostreamer.com) is used to generate an activity identifier 1224. The input item 1232 (identified by the input item index 1236) stores the event information 1130 and the event identifier 1234. In this example, the activity identifier 1234 uses the application identifier 1132 and the activity descriptor 1134 (such as the string "com . CompanyA . MediaPlayer :: PlayVideo "Hash"). For illustrative purposes, input items 1202 to 1232 store all activity information 1100 to 1130, respectively. However, it should be noted that in some embodiments, the input items 1202 to 1232 store only some of the activity information 1100 to 1130, respectively. For example, some embodiments do not store timestamps 1106 to 1136 in input items 1202 to 1232.Available Activity List In some embodiments, the available activity table described above is formatted similar to the announcement activity table 1200 shown in FIG. 12. However, the input items in the available activity table include application information for applications available in the corresponding electronic device (eg, accompanying electronic device 204).Event announcement message FIG. 13 presents a block diagram illustrating an activity announcement 1300 (eg, activity announcement message) according to some embodiments. It should be noted that the event announcement message shown in FIG. 13 is presented as a general example of the event announcement message used by some embodiments. Some embodiments sequence the fields in the event announcement message in different ways and / or include different information in the event announcement message. The event announcement message 1300 includes a device ID field 1302 and a version ID field 1304 as needed. The device ID field 1302 includes an identifier that identifies the device (eg, the identification source electronic device 202) from which the activity announcement message 1300 was sent. The version ID field 1304 includes a version identifier, such as a version identifier that accompanies the electronic device 204 to determine how the field in the activity information 1300 is formatted and / or how the information is stored in the field. The activity identifier field 1306 includes an activity identifier, such as one or more of activity identifiers 1204 to 1224. The flag field 1308 includes one or more flags corresponding to the announcement activity, such as flags 1108 to 1128. The timestamp field 1310 includes a timestamp for the activity announced in the activity identifier field 1306, such as one or more of the timestamps 1106 to 1126.Resumable activity instructions As previously mentioned, some embodiments present an indication that the activity is recoverable before requesting to extend the activity data. 14 presents a block diagram illustrating an indication of recoverable activity (ie, an indication that the activity is recoverable) according to some embodiments. More specifically, FIG. 14 shows a resumeable activity indication displayed on the display 1400 accompanying the electronic device 204. It should be noted that the recoverable activity indicator shown in FIG. 14 is presented as a general example of the recoverable activity indicator used by some embodiments. Some embodiments use different recoverable activity indications and / or present recoverable activity indications in different ways. In the illustrated embodiment, the accompanying electronic device 204 is a smart phone that includes a touch screen display 1400. The embodiment shown in FIG. 14 is in the receiving state, because the display 1400 shows a lock screen with an unlock indicator 1402 (which shows the phrase "slide to unlock"). Generally speaking, the user of the accompanying electronic device 204 uses the unlocking indicator 1402 to perform an operation to unlock the accompanying electronic device 204, such as sliding a figure of the unlocking indicator 1402 across the display 1400 using a finger. The resumeable activity indication 1404 includes a graphic (such as an illustration) that the user can manipulate to accept (or reject) the transfer of activity. In FIG. 14, the recoverable activity indication 1404 includes an icon similar to an envelope, indicating that the recoverable activity includes the use of a mail application. In some embodiments, the user may accept the activity transfer by tapping / touching the recoverable activity indicator 1404 on the recoverable activity indicator 1404, and / or by moving the recoverable activity indicator 1404 along a path on the display 1400 . For example, in some embodiments, the user may accept the activity transfer by touching and dragging the recoverable activity indicator 1404 along or near the path 1406 (shown as a dotted line). For illustrative purposes, the resumeable activity indicator 1404 is displayed at the lock screen that accompanies the electronic device 204. In some embodiments, the resumeable activity indicator 1404 may be displayed at different screens / locations (eg, at the unlock screen, at the menu bar, by using notification windows / push-ups, etc.). In addition, the position, size, graphics, color, and / or other visual characteristics of the recoverable activity indicator 1404 may vary for different embodiments, and may depend on the type of recoverable activity. For example, in some embodiments, the companion electronic device 204 determines the graphic displayed in the recoverable activity indication 1404 based on the application identifier used to announce the activity. As another example, in some embodiments, the resumeable activity indication 1404 is displayed at the lower left corner of the display 1400. Some embodiments present multiple recoverable activity indicators simultaneously. It should be noted that the acceptance (or rejection) of the activity transfer may include moving the recoverable activity indication 1404 along a path different from the path 1406 (eg, to the top of the screen, along a curved path, etc.). In some embodiments, the user can select the recoverable activity indicator 1404, tap on the recoverable activity indicator 1404, slide the recoverable activity indicator 1404, and use the recoverable activity indicator 1404 Performs gestures and the like to accept activity transfer.Automatic and manual event announcements In some embodiments, the source electronic device 202 automatically broadcasts an event announcement at a predetermined time interval, once activity information is received, based on the detected location of the source electronic device 202, and so on. In these embodiments, the source electronic device 202 may provide settings that the user can use to turn on or off the broadcast of the event announcement, such as system preferences. In some embodiments, the source electronic device 202 manually starts broadcasting the activity announcement, that is, waits for input from the user to start broadcasting the activity announcement. In some of these embodiments, the source electronic device 202 starts broadcasting the activity announcement after detecting the user's input and continues to broadcast the activity announcement for a predetermined period of time and / or until the user provides the source electronic device 202 to stop Until the event announcement is entered. In some embodiments, the user input for starting and / or stopping the activity announcement includes the movement of the source electronic device 202 (eg, shaking the source electronic device 202, moving the source electronic device 202 in an arc, swinging the source electronic device 202, etc.) 1. Perform one or more gestures, press keys and / or button combinations on the touch screen of the source electronic device 202, etc. In some embodiments, the event announcement message and / or the source electronic device 202 together with the event announcement message (ie, in addition to the event announcement message) are sent to the message accompanying the electronic device 204 such that the accompanying electronic device 204 starts the timer . In some embodiments, the companion electronic device 204 remains in the receiving state as described above until this timer expires. The source electronic device 202 may provide the expiration time of the timer to the accompanying electronic device 204, or the accompanying electronic device 204 may determine the expiration time. In some embodiments, the accompanying electronic device 204 presents an indication that the activity is recoverable until the timer expires, and if the user accepts the instruction, the activity continues at the accompanying electronic device 204 without the user performing one or more Operations (such as fingerprint scanning, password input, etc.) to unlock the companion electronic device 204. More specifically, the companion electronic device 204 can detect that the user accepts the instruction and can bypass the lock screen / unlock operation, thereby allowing the user to start using the companion electronic device 204 without unlocking the companion electronic device 204. In some embodiments, the user is allowed to bypass the lock screen / unlock operation only before the timer expires.Activities continue to frame In some embodiments, the third-party application receives some of the activity transfer operations (such as the operations described earlier with reference to FIGS. 3 to 10) via the "activity continuation" framework available at the electronic device that can participate in the activity transfer operation Or full access. The activity continuation framework can provide third-party applications with access to operating system functions, wizard helpers, processing procedures, services, etc. (which perform at least some of the activity transfer operations). For example, in some embodiments, the provider of the electronic device and / or the operating system of the electronic device provides an application programming interface (API) through which third-party applications can face functions that facilitate the transfer of activities Make the call. In some embodiments, the activity continuation framework enables third-party applications (and third-party application developers) to transfer activities from one electronic device to another electronic device without implementing (or even understanding) the low-level level of activity continuation detail. For example, in some embodiments, to enable third-party applications to participate in activity transfer operations, third-party application developers provide activity descriptors for third-party application-executable activities and configure third-party applications To perform activities. In some of these embodiments, at an electronic device such as source electronic device 202, the third-party application invokes the functions provided by the activity continuation framework to provide activities for the activities performed in the third-party application Descriptors (and possibly extended activity data). At an electronic device such as the accompanying electronic device 204, to configure a third-party application to perform an activity, the activity continuation framework can transfer extended activity data to the third-party application (eg, via a command line switcher or parameters, by using objects, Wait). Therefore, the activity continuation framework can promote the continuation of the activities of third-party applications with minimum effort and expense for third-party application developers.Exchange messages between electronic devices 15 presents a swimlane diagram illustrating messages exchanged between electronic devices according to some embodiments. As can be seen in FIG. 15, messages are exchanged between the source electronic device 202 and the accompanying electronic device 204 within a period of time, where the activity announcement 1500 appears first and the lower message appears subsequently. Although FIG. 15 shows messages exchanged in a specific order, in some embodiments, other messages are exchanged and / or messages are exchanged in a different order. Generally speaking, the electronic devices in the described embodiments exchange sufficient information to achieve the operations described herein. The message in FIG. 15 is associated with two operations performed by the source electronic device 202 and / or accompanying electronic device 204. The first operation (which includes the announcement 1500) is an activity announcement operation such as shown in FIG. During the event announcement operation, the source electronic device 202 broadcasts at least one event announcement 1500. The second operation (which includes a request 1502 for extension of activity information, extension of activity information 1504 and notification of activity transfer 1506) is an activity transfer operation such as shown in FIGS. 5-6. During the event transfer operation, the electronic device 204 responds to the event announcement 1500 with a request 1502 for extending event materials. After receiving the request 1502 for the extension activity data, the source electronic device 202 responds by sending the extension activity data 1504. In some embodiments, after the accompanying electronic device 204 uses the extended activity data to start executing the activity at the second application, the accompanying electronic device 204 sends a notification 1506 of the activity transfer to let the source electronic device 202 know that the activity is transferred.Forward information related to the event As described above, in some embodiments, the source electronic device (eg, source electronic device 202) relays information related to the activity to the companion electronic device (eg, companion electronic device 204). In general, the information related to the activity includes any information that can be used when performing the activity (eg, transfer to an activity accompanying the electronic device or another activity performed on the accompanying electronic device as described herein). For example, the information related to the activity includes (but is not limited to) the information from the source electronic device 202 that is copied and pasted in the clipboard (eg, text, images, video, sound, settings, files, etc.), file comparison The content of the earlier version, the undo buffer (which retains a record of changes made by the user to the system that can be used to reverse the changes, etc.), and / or other types of information. After receiving the information related to the event, the accompanying electronic device can use the information related to the event for one or more events. For example, when the information related to the activity includes the contents of the undo buffer, the accompanying electronic device may update the local undo buffer using the contents of the undo buffer received from the source electronic device (that is, the undo in the electronic device buffer). For example, the undo buffer may include a list of the last N operations performed when editing a file, the list is configured to enable reverse or "undo" operations using menus, hotkey combinations, etc. while editing the file subsequently . In this way, the companion electronic device can configure itself to reverse or undo the operations previously performed on the source electronic device. FIG. 17 presents a flowchart illustrating a processing procedure for forwarding activity-related information from a source electronic device to a companion electronic device according to some embodiments. More specifically, FIG. 17 illustrates an embodiment in which the source electronic device 202 uses an announcement message to relay information related to the event to the accompanying electronic device 204. It should be noted that the operations shown in FIG. 17 are presented as general examples of operations performed by some embodiments. The operations performed by some embodiments include different operations and / or operations performed in different orders. In addition, although some mechanisms are used to describe operations (eg, accompanying electronic device 204, etc.), in some embodiments, other mechanisms perform operations. For the processing procedure shown in FIG. 17, the contents of the scrapbook in the source electronic device 202 are used as information related to the activity. However, in some embodiments, and as described above, other types of activity-related information may be transferred from the source electronic device 202. In addition, "scrapbook" as used herein indicates copying and pasting of the scrapbook in the corresponding device. In some embodiments, the scrapbook is a software service that provides temporary storage of information in an electronic device (eg, operating system software services, standalone applications, etc.). The scrapbook enables users to perform operations such as copying, pasting, cutting, etc. to interact with information. Such scrapbooks are generally known in the art and therefore are not described in more detail herein. The processing procedure shown in FIG. 17 starts when the source electronic device 202 determines that the information related to the activity is available for forwarding to the companion electronic device 204 (step 1700). For example, based on receiving the activity information described above (see, for example, step 300 in FIG. 3), the source electronic device 202 may perform one or more checks and determine that information related to the activity is available. As another example, after receiving an instruction that the user has performed a copy operation to copy information (eg, copy text, files, images, etc.) to the clipboard, the source electronic device 202 may determine that the information related to the activity is available. As another example, the source electronic device 202 may monitor various operations performed in the source electronic device 202 as part of performing an activity and may directly or indirectly determine that information related to the activity has become available. As described above, for the example in FIG. 17, the content of the scrapbook is information related to the event. The source electronic device 202 therefore determines in step 1700 that there are one or more copied items placed on the scrapbook when performing the current activity. The source electronic device 202 then generates an information bulletin related to the activity (step 1702). In general, the information announcement related to the event includes sufficient information to enable the accompanying electronic device 204 (and other devices that may receive the information announcement related to the event) to determine that the information related to the event is of interest and handle the event-related Information. Continuing with the scrapbook example, the source electronic device 202 may generate an event-related information bulletin, which enables the accompanying electronic device 204 to determine the event-related information described in the event-related information bulletin (ie, from the source electronic device 202 The content of the scrapbook) is of interest to the accompanying electronic device 204, and the scrapbook in the accompanying electronic device 204 is updated using the content of the scrapbook from the source electronic device 202 or based on the content of the scrapbook from the source electronic device 202. FIG. 18 presents a block diagram illustrating an activity-related information bulletin 1800 generated by the source electronic device 202 according to some embodiments. The information announcement 1800 related to the event includes a device ID field 1802, a version ID field 1804, an event identifier field 1806 and a time stamp field 1808 as needed. The device ID field 1802 includes an identifier that identifies the device (for example, the identification source electronic device 202) from which the information bulletin 1800 related to the activity is sent. The version ID field 1804 includes a version identifier, such as a version identifier that can be used by the electronic device 204 to determine how the field in the information bulletin 1800 related to the activity is formatted and / or how the information is stored in the field. The activity identifier field 1806 includes an activity identifier that identifies the information corresponding to the activity and its associated activity, such as one or more of the activity identifiers 1204 to 1224. The timestamp field 1808 includes a timestamp for the event announced in the event identifier field 1806. As described above, the timestamp can be used to resolve the order in which two or more event-related information announcements 1800 are handled, which event-related information announcements 1800 are ignored, and so on. The event-related information field 1810 includes event-related information and / or information based on the event-related information, information obtained from the event-related information, or information that otherwise identifies the event-related information. Continuing the above example, in some embodiments, the source electronic device 202 includes some or all of the actual content from the scrapbook in the source electronic device 202 in the information field 1810 related to the activity. For example, if a section of text was recently copied to the clipboard, the section of text (that is, the text itself) (which may have meta data including formatting, time stamps, version information, etc.) may be included in the activity-related Information field 1810. As another example, if sections, images, and files of text are individually copied to the clipboard during one or more copy operations, some of the sections, images, and files of text (which may have corresponding metadata) Or all of them can be included in the information field 1810 related to the activity. As another example, in an embodiment where the source electronic device 202 includes information based on activity-related information in the activity-related information field 1810, information obtained from it, etc., the source electronic device 202 may convert the compressed information , Representative information, information that can be used to derive information related to the event, and / or other information based on or related to the event-related information is included in the event-related information field 1810. For example, the source electronic device 202 may include an indication that the information is available (eg, indicators, tags, identifiers, references, and / or other indicators) (may include basic identification of the type of information), but is not related to the activity The information announcement 1800 includes the actual information related to the event itself. In these embodiments, the accompanying electronic device 204 may perform one or more operations for retrieving information related to the activity indicated in the information bulletin 1800 related to the activity. For example, assuming that the source electronic device 202 includes an indicator to the event-related information in the event-related information field 1810, the accompanying electronic device 204 can be retrieved from the source electronic device 202 via one or more corresponding independent communications Information related to the activity indicated by the indicator. In some embodiments, in addition to some or all of the actual information related to the activity, information based on the information related to the activity, information obtained from it, etc. may be included in the information field 1810 related to the activity. Continuing the scrapbook example, it is assumed that a small section of text (100 bytes) and a larger image (4 MB) are copied to the scrapbook in the source electronic device 202. The source electronic device 202 can be in the field 1810 related to the activity Includes small sections of text (and possibly corresponding meta data), but may only include references to images. The companion electronic device 204 can then use the reference to request images as described above. In some embodiments, the size of the information related to the event is used to determine whether the information related to the event or the information based on it will be included in the information announcement 1800 related to the event. For example, based on one or more thresholds (such as the maximum size of the information announcement 1800 used for the activity, etc.), information related to the activity may be included directly or indirectly (e.g., by indicators, indicators Etc.) in the information field 1810 related to the activity. The source electronic device 202 then transmits (eg, broadcast, unicast, multicast, etc.) information announcements 1800 related to the activity (step 1704). For example, using the corresponding protocol, the source electronic device 202 may unicast the information announcement 1800 related to the event to the accompanying electronic device 204. Generally speaking, during this operation, the source electronic device 202 provides an activity-related information bulletin 1800 to the accompanying electronic device 204 via a wired or wireless communication link. As described in more detail below, after receiving the information bulletin 1800 related to the event, the companion electronic device 204 selectively provides information related to the event for use in performing one or more activities in the companion electronic device 204. For example, in FIG. 17, an embodiment is described in which the source electronic device 202 separately announces information related to an event from the above-described event announcement (eg, event announcement 1300). In other words, in some embodiments, the activity announcement 1300 is transmitted in addition to the information announcement 1800 related to the activity. However, in some embodiments, some or all of the activity-related information (ie, actual information, indicators, etc.) described above is included in the activity announcement 1300. In these embodiments, a separate event-related information bulletin 1800 may not be used. In these embodiments, the activity announcement 1300 includes various fields, values, etc. for retaining information related to the activity or based on the information. In these embodiments, the companion electronic device 204 can perform operations similar to those shown in FIG. 19 to process event-related information in the event announcement 1300. Although the information bulletin 1800 related to the event is shown as an example of the information bulletin related to the event, in some embodiments, the information bulletin 1800 related to the event is formatted in different ways (for example, including different configurations of fields, etc. ). For example, in some embodiments, one or more of the fields described as optional are not optional. In general, the event-related information announcement 1800 includes sufficient information to enable the source electronic device 202 to communicate the event-related information to the companion electronic device 204 so that the companion electronic device 204 can provide the event-related information to Used in 204 to perform one or more activities. FIG. 19 presents a flowchart illustrating a processing procedure for receiving activity-related information from a source electronic device in a companion electronic device according to some embodiments. More specifically, FIG. 19 illustrates an embodiment where accompanying electronic device 204 receives activity-related information from source electronic device 202. It should be noted that the operations shown in FIG. 19 are presented as general examples of operations performed by some embodiments. The operations performed by some embodiments include different operations and / or operations performed in different orders. In addition, although some mechanisms are used to describe operations (eg, accompanying electronic device 204, etc.), in some embodiments, other mechanisms perform operations. For the processing procedure shown in FIG. 19, the contents of the scrapbook in the source electronic device 202 are used as information related to the activity. However, in some embodiments, and as described above, other types of activity-related information may be received from the source electronic device 202. The processing procedure shown in FIG. 19 starts when the electronic device 204 receives the information bulletin 1800 related to the activity from the source electronic device 202 (step 1900). As described above, this operation may include receiving information including information that enables the companion electronic device 204 to process activity-related information and selectively provide information related to the activity to be used when performing one or more activities in the companion electronic device 204 Information announcements related to activities such as unicast, broadcast, and multicast 1800. The accompanying electronic device 204 then determines whether the event-related information described in the event-related information bulletin 1800 is of interest (1902). Generally speaking, during this operation, the companion electronic device 204 determines whether the information related to the activity is to be used for the companion electronic device 204. It should be noted that in this specification, the operation of deciding that the information related to the event is of concern and correspondingly providing (or not providing) the information related to the event is described as "selectively" providing the information related to the event. In other words, the companion electronic device 204 selects whether to provide information related to the event to the event in the companion electronic device 204 as described herein. In some embodiments, when determining whether the information related to the activity is of interest, the accompanying electronic device 204 presents an information availability indicator related to the activity on a display (eg, display 1400) accompanying the electronic device 204. FIG. 20 presents a block diagram illustrating an information availability indicator 2000 related to an activity according to some embodiments. As can be seen in FIG. 20, the information availability indicator 2000 related to the activity is an icon presented on the display 1400 accompanying the electronic device 204. In some embodiments, the activity availability information indicator 2000 is a simple icon that generally indicates that the activity related information is available. However, in some embodiments, the activity-related information availability indicator 2000 includes an indication of the type of activity-related information in the icon (eg, text indicator, video indicator, undo buffer indicator as shown Device, scrapbook indicator, combination indicator, etc.). Similar to the recoverable activity indication 1404 described above, in some embodiments, the user can select the information availability indicator 2000 related to the activity to signal the acceptance (or non-acceptance) of the information related to the activity to the accompanying Electronic device 204. For example, the user may touch the activity availability information indicator 2000 with a finger on the touch-sensitive screen, and hover and click the mouse pointer on the activity availability information indicator 2000. Drag the information availability indicator 2000 related to the event along the designated path, etc. In some embodiments, the acceptance of the information related to the activity causes the accompanying electronic device 204 to determine that the information related to the activity is of interest. In some embodiments, when determining whether the information related to the activity is of interest (in addition to or in lieu of using the information availability indicator 2000 related to the activity described above), the accompanying electronic device 204 determines whether the corresponding activity Whether to transfer the information related to the activity from the source electronic device 202 to the companion electronic device 204 in a format supported by the companion electronic device 204, etc. Generally speaking, when the information related to the activity should and can make the activity in the accompanying electronic device 204 available, the accompanying electronic device 204 determines that the information related to the activity is of interest. If the event-related information described in the event-related information announcement 1800 is not of interest (step 1904), the accompanying electronic device 204 may stop the process related to the event-related information announcement 1800 and the processing procedure ends. For this operation, in some embodiments, the accompanying electronic device 204 can remove the information availability indicator 2000 related to the activity from the display screen, can configure itself to ignore future repeated announcements, can convey a negative answer or refuse to the source Electronic device 202, etc. If the event-related information described in the event-related information bulletin 1800 is of interest (step 1904), the electronic device 204 accompanies the event-related information (1906). Generally speaking, during this operation, the accompanying electronic device 204 retrieves at least some of the information related to the activity from one or both of the information bulletin 1800 related to the activity and the source electronic device 202. For this operation, if the information bulletin 1800 related to the event contains some or all of the actual information related to the event, the accompanying electronic device 204 can obtain some or some of the information related to the event from the information bulletin 1800 related to the event All. For example, assuming that the source electronic device 202 includes at least some of the contents of the scrapbook in the information bulletin 1800 related to the event, the accompanying electronic device 204 can obtain the contents of the scrapbook from the information bulletin 1800 related to the event. In addition to or in lieu of obtaining information related to the event from the information bulletin 1800 related to the event, the accompanying electronic device 204 may obtain some or all of the information related to the event from the source electronic device 202. For example, if the source electronic device 202 includes an indicator (or other indicator) to the event-related information on the source electronic device 202 in the activity-related information bulletin 1800 (for example, a clip to the source electronic device 202 The information such as image files on the book, etc.), the accompanying electronic device 204 may request the source electronic device 202 for information related to the activity. In some embodiments, the information related to the event can be obtained by the source electronic device 202 together with the extended event data, that is, it can be included in the extended event data. In some of these embodiments, accompanying electronic device 204 requests to send event-related information along with extended event data. For example, the event-related information bulletin 1800 may include an indication that the event-related information is available (eg, indicators or other indicators), and as described herein, the electronic device may receive a request to obtain data related to the event And transfer the corresponding activities (that is, request to extend the activity data). The companion electronic device 204 then provides information related to the activity for use when performing one or more activities in the companion electronic device 204 (step 1908). During this operation, the electronic device 204 uses one or more corresponding structures (memory, clipboard, cache, buffer, etc.) to store information related to the event so that the information related to the event can be used for the event (e.g. Move from the source electronic device 202 to the activity accompanying the electronic device 204, the activity started on the accompanying electronic device 204, etc.). In some embodiments, "providing activity-related information for use in performing one or more activities" includes providing activity-related information in a manner that can be used in a corresponding and expected manner during the operation of the activity . Continuing the scrapbook example, this may include making the contents of the scrapbook from the source electronic device 202 available for pasting and other operations, because the information on the scrapbook (that is, from the scrapbook accompanying the electronic device 204) is generally available In the accompanying electronic device 204. For example, hotkeys and menu selections can be used to access the contents of the scrapbook copied from the source electronic device 202 on the companion electronic device 204. As another example, assuming that the information related to the activity includes the contents of the undo buffer, the undo buffer in the electronic device 204 can use the information related to the activity (that is, the history of operations performed in the source electronic device 202) To update so that the corresponding operation that was not originally performed in the companion electronic device 204 can be undone in the companion electronic device 204. Continuing the scrapbook example, in some embodiments, providing information related to the activity to use when copying the content of the scrapbook described in the information bulletin 1800 related to the activity when performing one or more activities in the companion electronic device 204 To accompany the scrapbook in the electronic device 204. In these embodiments, the contents of the scrapbook may be partially or completely overwritten by the contents of the scrapbook described in the information bulletin 1800 related to the event. In some embodiments, in order to avoid overwriting and thus loss of applicable information on the scrapbook accompanying the electronic device 204, an independent transfer information buffer is provided along with the electronic device 204 (eg, the operating system thereon). In these embodiments, corresponding menu selections, hot keys, etc. may be used to access the transfer information buffer. In some embodiments, the user may be presented with the option to overwrite the scrapbook or write information to the transfer activity buffer (eg, with a prompt). In some embodiments, the transfer information buffer is a software service that provides temporary storage of information in the electronic device (such as operating system software services, stand-alone applications, etc.), but the hardware-based transfer information buffer can be separate or with software The transfer information buffer is used in combination. The transfer information buffer enables users to perform operations such as copying, pasting, cutting, etc. to interact with the information stored in the transfer information buffer. In some embodiments, the user may be presented with an interface (eg, on the display 1400) that enables the user to determine what content from the scrapbook of the source electronic device 202 is to be copied to the scrapbook in the accompanying electronic device and from the source The contents of the scrapbook of the electronic device 202 are to be copied to the accompanying scrapbook in the electronic device. For example, after selecting the information availability indicator 2000 related to the activity, a pop-up window that displays or otherwise lists the contents of the scrapbook from the source electronic device 202 may be presented on the display 1400. The pop-up window includes An organization that selects which content to copy to the scrapbook accompanying the electronic device 204, where to copy the content to the scrapbook, and so on. It should be noted that although the information availability indicator 2000 related to the activity is presented in a specific location on the lock screen, in some embodiments, the information availability indicator 2000 related to the activity may be presented during the operation accompanying the electronic device 204 On any screen, in different locations, etc. In addition, information availability indicator 2000 related to the activity may be presented along with and / or associated with the recoverable activity indication 1404. In these embodiments, the user may select one or both of the information availability indicator 2000 and the resumeable activity indication 1404 related to the activity to perform the transfer activity (as described herein) or receive information related to the activity One or both. In some embodiments, the companion electronic device 204 only presents the resumeable activity indication 1404 and the user selects the resumeable activity indication 1404 so that the companion electronic device 204 transfers the activity (as described herein) and accepts information related to the activity. The foregoing description of the embodiments is presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the embodiments to the disclosed form. Therefore, many modifications and changes will be apparent to those skilled in the art. In addition, the above disclosure is not intended to limit the embodiments. The scope of the embodiments is defined by the scope of the attached patent application.
100‧‧‧電子裝置100‧‧‧Electronic device
102‧‧‧處理子系統102‧‧‧ processing subsystem
104‧‧‧記憶體子系統104‧‧‧Memory subsystem
106‧‧‧網路連接子系統106‧‧‧Network connection subsystem
108‧‧‧顯示子系統108‧‧‧ Display subsystem
200‧‧‧網路環境200‧‧‧Network environment
202‧‧‧源電子裝置202‧‧‧Source electronic device
204‧‧‧伴隨電子裝置204‧‧‧With electronic device
206‧‧‧第二源電子裝置206‧‧‧Second source electronic device
208‧‧‧通信信號208‧‧‧Communication signal
1100‧‧‧活動資訊1100‧‧‧Event Information
1102‧‧‧應用程式識別符1102‧‧‧Application identifier
1104‧‧‧活動描述符1104‧‧‧Activity descriptor
1106‧‧‧時戳1106‧‧‧Time stamp
1108‧‧‧旗標1108‧‧‧ flag
1110‧‧‧活動資訊1110‧‧‧Event Information
1112‧‧‧應用程式識別符1112‧‧‧Application identifier
1114‧‧‧活動描述符1114‧‧‧Activity descriptor
1116‧‧‧時戳1116‧‧‧Timestamp
1118‧‧‧旗標1118‧‧‧ flag
1120‧‧‧活動資訊1120‧‧‧Event Information
1122‧‧‧應用程式識別符1122‧‧‧Application identifier
1124‧‧‧活動描述符1124‧‧‧Activity descriptor
1126‧‧‧時戳1126‧‧‧Time stamp
1128‧‧‧旗標1128‧‧‧ flag
1130‧‧‧活動資訊1130‧‧‧Event Information
1132‧‧‧應用程式識別符1132‧‧‧Application identifier
1134‧‧‧活動描述符1134‧‧‧Activity descriptor
1136‧‧‧時戳1136‧‧‧Time stamp
1138‧‧‧旗標1138‧‧‧ flag
1200‧‧‧公告活動表1200‧‧‧Announcement Activity Table
1202‧‧‧輸入項目1202‧‧‧entry items
1204‧‧‧活動識別符1204‧‧‧Activity identifier
1206‧‧‧輸入項目索引1206‧‧‧Enter the item index
1212‧‧‧輸入項目1212‧‧‧entry items
1214‧‧‧活動識別符1214‧‧‧ Activity identifier
1216‧‧‧輸入項目索引1216‧‧‧Enter the item index
1222‧‧‧輸入項目1222‧‧‧entry items
1224‧‧‧活動識別符1224‧‧‧Activity identifier
1226‧‧‧輸入項目索引1226‧‧‧Enter the item index
1232‧‧‧輸入項目1232‧‧‧entry items
1234‧‧‧活動識別符1234‧‧‧ Activity identifier
1236‧‧‧輸入項目索引1236‧‧‧Enter the item index
1300‧‧‧活動公告/活動公告訊息1300‧‧‧Event announcement / Event announcement message
1302‧‧‧裝置ID欄位1302‧‧‧Device ID field
1304‧‧‧版本ID欄位1304‧‧‧Version ID field
1306‧‧‧活動識別符欄位1306‧‧‧Activity identifier field
1308‧‧‧旗標欄位1308‧‧‧ flag field
1310‧‧‧時戳欄位1310‧‧‧Timestamp field
1400‧‧‧顯示器1400‧‧‧Monitor
1402‧‧‧解鎖指示器1402‧‧‧Unlock indicator
1404‧‧‧可恢復活動指示1404‧‧‧Resumable activity instructions
1406‧‧‧路徑1406‧‧‧ Path
1500‧‧‧活動公告1500‧‧‧Event Announcement
1502‧‧‧對於延展活動資料的請求1502‧‧‧ Request for extension activities
1504‧‧‧延展活動資料1504‧‧‧Extended event information
1506‧‧‧活動轉移之通知1506‧‧‧Notice of activity transfer
1600‧‧‧電子裝置1600‧‧‧Electronic device
1602‧‧‧範圍1602‧‧‧Scope
1604‧‧‧範圍1604‧‧‧Scope
1606‧‧‧範圍1606‧‧‧Scope
1800‧‧‧與活動相關之資訊公告1800‧‧‧ Information announcement related to the event
1802‧‧‧裝置ID欄位1802‧‧‧Device ID field
1804‧‧‧版本ID欄位1804‧‧‧Version ID field
1806‧‧‧活動識別符欄位1806‧‧‧Activity identifier field
1808‧‧‧時戳欄位1808‧‧‧Timestamp field
1810‧‧‧與活動相關之資訊欄位1810‧‧‧ Information field related to the event
2000‧‧‧與活動相關之資訊可用性指示器2000‧‧‧ Activity availability indicator
圖1呈現說明根據一些實施例之電子裝置的方塊圖。 圖2呈現說明根據一些實施例之網路環境的方塊圖。 圖3呈現說明根據一些實施例之用於廣播活動公告訊息之處理程序的流程圖。 圖4呈現說明根據一些實施例之用於儲存描述在伴隨電子裝置處可用的活動的活動資訊的處理程序之流程圖。 圖5呈現說明根據一些實施例之用於請求延展活動資料並轉移活動的處理程序之流程圖。 圖6呈現說明根據一些實施例之用於對針對延展活動資料之請求作出回應的處理程序之流程圖。 圖7呈現說明根據一些實施例之用於判定第二應用程式是否在伴隨電子裝置處可用的處理程序之流程圖。 圖8呈現說明根據一些實施例之用於使用旗標判定第二應用程式的處理程序之流程圖。 圖9呈現說明根據一些實施例之用於判定當活動識別符識別儲存所公告活動的結構中之輸入項目時第二應用程式是否可用的處理程序之流程圖。 圖10呈現說明根據一些實施例之用於從兩個或大於兩個活動公告訊息判定最近活動的處理程序之流程圖。 圖11呈現說明根據一些實施例之活動資訊的方塊圖。 圖12呈現說明根據一些實施例之公告活動表的方塊圖。 圖13呈現說明根據一些實施例之活動公告訊息的方塊圖。 圖14呈現說明根據一些實施例之可恢復活動指示的方塊圖。 圖15呈現說明根據一些實施例之在電子裝置之間交換的訊息之泳道圖。 圖16呈現說明根據一些實施例之彼此接近之電子裝置的方塊圖。 圖17呈現說明根據一些實施例之用於將與活動相關資訊從源電子裝置轉遞至伴隨電子裝置的處理程序之流程圖。 圖18呈現說明根據一些實施例之由源電子裝置產生的與活動相關資訊公告的方塊圖。 圖19呈現說明根據一些實施例之用於在伴隨電子裝置中接收來自源電子裝置的與活動相關之資訊的處理程序之流程圖。 圖20呈現說明根據一些實施例之與活動相關之資訊可用性指示器的方塊圖。 在圖式中,相似之參考數字指代相同之圖式元件。FIG. 1 presents a block diagram illustrating an electronic device according to some embodiments. FIG. 2 presents a block diagram illustrating a network environment according to some embodiments. FIG. 3 presents a flowchart illustrating a processing procedure for broadcasting event announcement messages according to some embodiments. FIG. 4 presents a flowchart illustrating a processing procedure for storing activity information describing activities available at an accompanying electronic device according to some embodiments. FIG. 5 presents a flowchart illustrating a processing procedure for requesting extension activity data and transferring activities according to some embodiments. FIG. 6 presents a flowchart illustrating a processing procedure for responding to requests for extended activity data according to some embodiments. 7 presents a flowchart illustrating a processing procedure for determining whether a second application is available at a companion electronic device according to some embodiments. 8 presents a flowchart illustrating a processing procedure for determining a second application using flags according to some embodiments. 9 presents a flowchart illustrating a processing procedure for determining whether a second application is available when an activity identifier identifies an input item in a structure storing an announced activity, according to some embodiments. FIG. 10 presents a flowchart illustrating a processing procedure for determining the most recent activity from two or more activity announcement messages according to some embodiments. 11 presents a block diagram illustrating activity information according to some embodiments. FIG. 12 presents a block diagram illustrating an announcement activity table according to some embodiments. 13 presents a block diagram illustrating an activity announcement message according to some embodiments. Figure 14 presents a block diagram illustrating an indication of resumable activity according to some embodiments. 15 presents a swimlane diagram illustrating messages exchanged between electronic devices according to some embodiments. 16 presents a block diagram illustrating electronic devices that are close to each other according to some embodiments. FIG. 17 presents a flowchart illustrating a processing procedure for forwarding activity-related information from a source electronic device to a companion electronic device according to some embodiments. FIG. 18 presents a block diagram illustrating an event-related information announcement generated by a source electronic device according to some embodiments. FIG. 19 presents a flowchart illustrating a processing procedure for receiving activity-related information from a source electronic device in a companion electronic device according to some embodiments. FIG. 20 presents a block diagram illustrating information availability indicators related to activities in accordance with some embodiments. In the drawings, similar reference numerals refer to the same drawing elements.
Claims (18)
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/841,410 US10187770B2 (en) | 2014-05-30 | 2015-08-31 | Forwarding activity-related information from source electronic devices to companion electronic devices |
US14/841,410 | 2015-08-31 | ||
??PCT/US2016/040583 | 2016-06-30 | ||
PCT/US2016/040583 WO2017039821A1 (en) | 2015-08-31 | 2016-06-30 | Forwarding activity-related information from source electronic devices to companion electronic devices |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201719443A TW201719443A (en) | 2017-06-01 |
TWI627541B true TWI627541B (en) | 2018-06-21 |
Family
ID=56551556
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105127666A TWI627541B (en) | 2015-08-31 | 2016-08-29 | Forwarding activity-related information from source electronic devices to companion electronic devices |
Country Status (4)
Country | Link |
---|---|
KR (2) | KR102044108B1 (en) |
CN (2) | CN107949830B (en) |
TW (1) | TWI627541B (en) |
WO (1) | WO2017039821A1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10237711B2 (en) | 2014-05-30 | 2019-03-19 | Apple Inc. | Dynamic types for activity continuation between electronic devices |
US10193987B2 (en) | 2014-05-30 | 2019-01-29 | Apple Inc. | Activity continuation between electronic devices |
US10187770B2 (en) | 2014-05-30 | 2019-01-22 | Apple Inc. | Forwarding activity-related information from source electronic devices to companion electronic devices |
CN117784988B (en) * | 2022-09-28 | 2024-10-01 | 荣耀终端有限公司 | Application connection method and terminal equipment |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120096368A1 (en) * | 2010-10-14 | 2012-04-19 | Microsoft Corporation | Cloud-based virtual clipboard |
US20130007499A1 (en) * | 2011-06-28 | 2013-01-03 | Amazon Technologies, Inc. | Transferring state information between electronic devices |
TW201314471A (en) * | 2011-09-29 | 2013-04-01 | Cheng-Wei Tsai | Cloud clipboard system and method thereof |
US20140173447A1 (en) * | 2012-12-13 | 2014-06-19 | Motorola Mobility Llc | Apparatus and Methods for Facilitating Context Handoff Between Devices in a Cloud Based Wireless Personal Area Network |
US20140188802A1 (en) * | 2012-12-31 | 2014-07-03 | Appsense Limited | Pull and paste |
US20150012861A1 (en) * | 2013-07-02 | 2015-01-08 | Dropbox, Inc. | Syncing content clipboard |
US8964947B1 (en) * | 2013-03-11 | 2015-02-24 | Amazon Technologies, Inc. | Approaches for sharing data between electronic devices |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8583090B2 (en) * | 2006-12-29 | 2013-11-12 | Nokia Corporation | Transferring task completion to another device |
US10489414B2 (en) * | 2010-03-30 | 2019-11-26 | Microsoft Technology Licensing, Llc | Companion experience |
US8954597B2 (en) * | 2010-06-28 | 2015-02-10 | Hulu, LLC | Method and apparatus for synchronizing paused playback across platforms |
US9110743B2 (en) * | 2010-12-21 | 2015-08-18 | Microsoft Technology Licensing, Llc | Extensible system action for sharing while remaining in context |
US9659437B2 (en) * | 2012-09-28 | 2017-05-23 | Bally Gaming, Inc. | System and method for cross platform persistent gaming sessions using a mobile device |
US9003299B2 (en) * | 2012-06-08 | 2015-04-07 | Apple Inc. | Extensible application state preservation architecture |
WO2015039300A1 (en) * | 2013-09-18 | 2015-03-26 | Nokia Corporation | Bluetooth low energy packets |
-
2016
- 2016-06-30 CN CN201680050026.4A patent/CN107949830B/en active Active
- 2016-06-30 KR KR1020187006717A patent/KR102044108B1/en active IP Right Grant
- 2016-06-30 WO PCT/US2016/040583 patent/WO2017039821A1/en active Application Filing
- 2016-06-30 CN CN202210397164.7A patent/CN114706698A/en active Pending
- 2016-06-30 KR KR1020197032808A patent/KR102097931B1/en active IP Right Grant
- 2016-08-29 TW TW105127666A patent/TWI627541B/en active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120096368A1 (en) * | 2010-10-14 | 2012-04-19 | Microsoft Corporation | Cloud-based virtual clipboard |
US20130007499A1 (en) * | 2011-06-28 | 2013-01-03 | Amazon Technologies, Inc. | Transferring state information between electronic devices |
TW201314471A (en) * | 2011-09-29 | 2013-04-01 | Cheng-Wei Tsai | Cloud clipboard system and method thereof |
US20140173447A1 (en) * | 2012-12-13 | 2014-06-19 | Motorola Mobility Llc | Apparatus and Methods for Facilitating Context Handoff Between Devices in a Cloud Based Wireless Personal Area Network |
US20140188802A1 (en) * | 2012-12-31 | 2014-07-03 | Appsense Limited | Pull and paste |
US8964947B1 (en) * | 2013-03-11 | 2015-02-24 | Amazon Technologies, Inc. | Approaches for sharing data between electronic devices |
US20150012861A1 (en) * | 2013-07-02 | 2015-01-08 | Dropbox, Inc. | Syncing content clipboard |
Also Published As
Publication number | Publication date |
---|---|
CN114706698A (en) | 2022-07-05 |
KR20180038522A (en) | 2018-04-16 |
KR20190126949A (en) | 2019-11-12 |
KR102044108B1 (en) | 2019-11-12 |
TW201719443A (en) | 2017-06-01 |
KR102097931B1 (en) | 2020-04-06 |
CN107949830A (en) | 2018-04-20 |
CN107949830B (en) | 2022-05-06 |
WO2017039821A1 (en) | 2017-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11356829B2 (en) | Dynamic types for activity continuation between electronic devices | |
US10667109B2 (en) | Forwarding activity-related information from source electronic devices to companion electronic devices | |
AU2020200339B2 (en) | Activity continuation between electronic devices | |
US9948728B2 (en) | Continuing an activity commenced on a source device with a companion device | |
TWI627541B (en) | Forwarding activity-related information from source electronic devices to companion electronic devices |