用于在應(yīng)用的后臺(tái)對(duì)動(dòng)作進(jìn)行同步的系統(tǒng)和方法
【專利摘要】后臺(tái)頁(yè)面腳本在設(shè)備上運(yùn)行。多個(gè)網(wǎng)頁(yè)在該設(shè)備上運(yùn)行。向后臺(tái)頁(yè)面腳本注冊(cè)多個(gè)網(wǎng)頁(yè)。在數(shù)據(jù)庫(kù)中緩存多個(gè)網(wǎng)頁(yè)中的一個(gè)網(wǎng)頁(yè)所生成的動(dòng)作。響應(yīng)于確定設(shè)備處于在線狀態(tài)以及不再注冊(cè)多個(gè)網(wǎng)頁(yè)中的一個(gè)網(wǎng)頁(yè),后臺(tái)頁(yè)面腳本從數(shù)據(jù)庫(kù)取回動(dòng)作并發(fā)送動(dòng)作。
【專利說明】用于在應(yīng)用的后臺(tái)對(duì)動(dòng)作進(jìn)行同步的系統(tǒng)和方法
[0001]相關(guān)申請(qǐng)的交叉引用
[0002]本申請(qǐng)要求于2012年5月3日遞交的美國(guó)申請(qǐng)13,463,131和于2011年8月31日遞交的美國(guó)臨時(shí)申請(qǐng)N0.61/529,646的優(yōu)先權(quán),其全文均通過引用的方式并入本文中。
【技術(shù)領(lǐng)域】
[0003]本說明書大體上涉及用于在應(yīng)用的后臺(tái)對(duì)動(dòng)作進(jìn)行同步的系統(tǒng)、方法和裝置,更具體地,涉及用于在返回在線狀態(tài)時(shí)在web應(yīng)用的后臺(tái)對(duì)動(dòng)作進(jìn)行同步的系統(tǒng)、方法和裝置。
【背景技術(shù)】
[0004]當(dāng)處于具有受限或斷斷續(xù)續(xù)的互聯(lián)網(wǎng)接入的區(qū)域中時(shí),現(xiàn)有系統(tǒng)向訪問web應(yīng)用的用戶提供有限的功能或者不向用戶提供功能。例如,在現(xiàn)有的電子郵件(email)應(yīng)用中,當(dāng)訪問電子郵件應(yīng)用的設(shè)備具有斷斷續(xù)續(xù)的互聯(lián)網(wǎng)接入或不能接入互聯(lián)網(wǎng)時(shí),在設(shè)備重新獲得對(duì)互聯(lián)網(wǎng)的接入之前,只有極少的功能或者沒有功能可用。
[0005]在未連接到互聯(lián)網(wǎng)時(shí),訪問電子郵件應(yīng)用的一些設(shè)備可以提供在收件箱中緩存的電子郵件消息的靜態(tài)顯示。例如,使用設(shè)備的用戶可以看見電子郵件的主題或者先前在該設(shè)備與互聯(lián)網(wǎng)斷開之前所發(fā)送的電子郵件的緩存部分。然而,電子郵件消息的主題的顯示是靜態(tài)的,并且在用戶重新連接到互聯(lián)網(wǎng)之前,向用戶提供極少的功能。此外,現(xiàn)有系統(tǒng)就在設(shè)備與電子郵件服務(wù)器之間同步數(shù)據(jù)而言具有有限的能力。
【發(fā)明內(nèi)容】
[0006]根據(jù)實(shí)施例,向在設(shè)備上運(yùn)行的后臺(tái)頁(yè)面腳本注冊(cè)在所述設(shè)備上運(yùn)行的多個(gè)網(wǎng)頁(yè)。在數(shù)據(jù)庫(kù)中緩存所述多個(gè)網(wǎng)頁(yè)中的一個(gè)網(wǎng)頁(yè)所生成的動(dòng)作。響應(yīng)于確定所述設(shè)備處于在線狀態(tài)以及不再注冊(cè)所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè):所述后臺(tái)頁(yè)面腳本從所述數(shù)據(jù)庫(kù)取回所述動(dòng)作,并且所述后臺(tái)頁(yè)面腳本發(fā)送所述動(dòng)作。
[0007]在一個(gè)實(shí)施例中,所述后臺(tái)頁(yè)面腳本向主機(jī)服務(wù)器發(fā)送所述動(dòng)作。
[0008]在一個(gè)實(shí)施例中,響應(yīng)于對(duì)所述動(dòng)作的成功發(fā)送的確認(rèn)的接收,從所述數(shù)據(jù)庫(kù)中移除所述動(dòng)作。
[0009]在一個(gè)實(shí)施例中,所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)在所述數(shù)據(jù)庫(kù)中緩存第二動(dòng)作。所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)發(fā)送所述第二動(dòng)作。所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)從所述數(shù)據(jù)庫(kù)中移除所述第二動(dòng)作。在一個(gè)實(shí)施例中,所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)向所述后臺(tái)頁(yè)面腳本發(fā)送不再注冊(cè)的請(qǐng)求。
[0010]在一個(gè)實(shí)施例中,響應(yīng)于對(duì)所述第二動(dòng)作的成功發(fā)送的第二確認(rèn)的接收,發(fā)生從所述數(shù)據(jù)庫(kù)中移除所述第二動(dòng)作。在一個(gè)實(shí)施例中,響應(yīng)于接收到用戶關(guān)閉所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)的請(qǐng)求,發(fā)送所述不再注冊(cè)的請(qǐng)求。
[0011 ] 在一個(gè)實(shí)施例中,在所述數(shù)據(jù)庫(kù)中鎖定所述動(dòng)作。[0012]在一個(gè)實(shí)施例中,所述多個(gè)網(wǎng)頁(yè)中每一個(gè)與以下各項(xiàng)中的至少一項(xiàng)相關(guān)聯(lián):電子郵件應(yīng)用、web文檔處理應(yīng)用、多媒體播放器應(yīng)用、社交媒體網(wǎng)絡(luò)應(yīng)用、電子數(shù)據(jù)表應(yīng)用、呈現(xiàn)應(yīng)用、游戲應(yīng)用、圖像編輯應(yīng)用和視頻編輯應(yīng)用。
[0013]根據(jù)實(shí)施例,設(shè)備經(jīng)由互聯(lián)網(wǎng)訪問應(yīng)用。所述設(shè)備運(yùn)行與所述應(yīng)用相關(guān)聯(lián)的后臺(tái)頁(yè)面腳本。在后臺(tái)頁(yè)面中注冊(cè)與所述應(yīng)用相關(guān)聯(lián)的第一網(wǎng)頁(yè)和與所述應(yīng)用相關(guān)聯(lián)的第二網(wǎng)頁(yè)。當(dāng)設(shè)備處于離線狀態(tài)時(shí),在數(shù)據(jù)庫(kù)中存儲(chǔ)所述第一網(wǎng)頁(yè)所生成的第一動(dòng)作和所述第二網(wǎng)頁(yè)所生成的第二動(dòng)作。確定所述第一網(wǎng)頁(yè)和所述第二網(wǎng)頁(yè)被關(guān)閉。向所述后臺(tái)頁(yè)面注銷所述第一網(wǎng)頁(yè)和所述第二網(wǎng)頁(yè)。所述后臺(tái)頁(yè)面腳本從所述數(shù)據(jù)庫(kù)取回所述第一動(dòng)作和所述第二動(dòng)作。經(jīng)由所述互聯(lián)網(wǎng)向服務(wù)器發(fā)送所述第一動(dòng)作和所述第二動(dòng)作。
[0014]通過參考以下詳細(xì)描述和附圖,本公開的這些和其他優(yōu)點(diǎn)將對(duì)本領(lǐng)域普通技術(shù)人員是顯而易見的。
【專利附圖】
【附圖說明】
[0015]圖1示出了根據(jù)實(shí)施例可以用于在應(yīng)用的后臺(tái)對(duì)動(dòng)作進(jìn)行同步的通信系統(tǒng)100 ;
[0016]圖2示出了根據(jù)實(shí)施例的設(shè)備的功能組件;
[0017]圖3示出了根據(jù)實(shí)施例的主機(jī)服務(wù)器的功能組件;
[0018]圖4示出了根據(jù)實(shí)施例應(yīng)用在瀏覽器上運(yùn)行的顯示;
[0019]圖5是示出了根據(jù)實(shí)施例使用后臺(tái)頁(yè)面腳本的方法的流程圖;
[0020]圖6示出了根據(jù)實(shí)施例在瀏覽器上運(yùn)行的應(yīng)用的顯示;
[0021]圖7示出了根據(jù)實(shí)施例包括分頁(yè)式網(wǎng)頁(yè)的應(yīng)用的顯示;
[0022]圖8是示出了根據(jù)實(shí)施例用于對(duì)動(dòng)作進(jìn)行同步的方法的流程圖;以及
[0023]圖9示出了可以用于實(shí)現(xiàn)本發(fā)明的計(jì)算機(jī)的組件。
【具體實(shí)施方式】
[0024]圖1示出了根據(jù)實(shí)施例可以用于在應(yīng)用的后臺(tái)對(duì)動(dòng)作進(jìn)行同步的通信系統(tǒng)100。通信系統(tǒng)100包括網(wǎng)絡(luò)102、主機(jī)服務(wù)器101和設(shè)備103。通信系統(tǒng)100可以包括多于一個(gè)設(shè)備。在一個(gè)實(shí)施例中,通信系統(tǒng)100可以包括多于一個(gè)主機(jī)服務(wù)器或其他服務(wù)器。
[0025]在圖1的示例性實(shí)施例中,網(wǎng)絡(luò)102是互聯(lián)網(wǎng)。在其他實(shí)施例中,網(wǎng)絡(luò)102可以包括多個(gè)不同類型的網(wǎng)絡(luò)(例如,內(nèi)聯(lián)網(wǎng)、局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)、無(wú)線網(wǎng)絡(luò)、基于光纖通道的存儲(chǔ)區(qū)域網(wǎng)絡(luò)(SAN)或以太網(wǎng))中的一個(gè)或更多個(gè)??梢允褂闷渌W(wǎng)絡(luò)。備選地,網(wǎng)絡(luò)102可以包括不同類型的網(wǎng)絡(luò)的組合。
[0026]通信系統(tǒng)100還包括主機(jī)服務(wù)器101。在一個(gè)實(shí)施例中,主機(jī)服務(wù)器101可以管理(host)設(shè)備103可以訪問的web應(yīng)用。在備選實(shí)施例中,web應(yīng)用可以由任意其他服務(wù)器管理。在一個(gè)實(shí)施例中,主機(jī)服務(wù)器101可以提供對(duì)一個(gè)或更多個(gè)網(wǎng)頁(yè)的訪問,從而提供對(duì)web應(yīng)用的訪問。例如,如圖3和圖6所示,主機(jī)服務(wù)器101可以管理顯示網(wǎng)頁(yè)611和612的應(yīng)用316。網(wǎng)頁(yè)611和612可以備選地被稱為前臺(tái)頁(yè)面。設(shè)備103可以訪問可以使用例如傳統(tǒng)的web瀏覽器查看的萬(wàn)維網(wǎng)頁(yè)面,例如網(wǎng)頁(yè)611和612。
[0027]設(shè)備103可以是使用戶能夠訪問應(yīng)用316的任意設(shè)備。設(shè)備103可以通過直接(有線)鏈路或無(wú)線地與網(wǎng)絡(luò)102相連。設(shè)備103可以具有用于顯示信息的顯示屏(未示出)。例如,設(shè)備103可以是個(gè)人計(jì)算機(jī)、膝上型計(jì)算機(jī)、工作站、大型計(jì)算機(jī)、諸如無(wú)線電話等的移動(dòng)通信設(shè)備、個(gè)人數(shù)字助理、蜂窩設(shè)備、膝上型計(jì)算機(jī)、上網(wǎng)本、平板電腦設(shè)備、電子書閱讀器等。可以使用其他設(shè)備。
[0028]圖2示出了根據(jù)實(shí)施例的設(shè)備103的功能組件。設(shè)備103包括瀏覽器201和顯示器202。瀏覽器201可以是用于經(jīng)由例如互聯(lián)網(wǎng)訪問萬(wàn)維網(wǎng)站點(diǎn)的傳統(tǒng)web瀏覽器。顯示器202可以顯示軟件應(yīng)用、網(wǎng)頁(yè)、文檔、文本、圖像、視頻、多媒體和其他信息。
[0029]設(shè)備103還包括存儲(chǔ)器203,存儲(chǔ)器203包括數(shù)據(jù)庫(kù)204。數(shù)據(jù)庫(kù)204可以用于在設(shè)備103上本地存儲(chǔ)或緩存項(xiàng)目。在一個(gè)實(shí)施例中,數(shù)據(jù)庫(kù)204可以是結(jié)構(gòu)化查詢語(yǔ)言(SQL)數(shù)據(jù)庫(kù)或SQLite數(shù)據(jù)庫(kù)。設(shè)備103包括處理器205。
[0030]圖3示出了根據(jù)實(shí)施例的主機(jī)服務(wù)器101的功能組件。主機(jī)服務(wù)器101包括處理器302和存儲(chǔ)器303。主機(jī)服務(wù)器101可以包括圖3中未示出的其他組件。存儲(chǔ)器303存儲(chǔ)應(yīng)用316。在備選實(shí)施例中,應(yīng)用316可以存儲(chǔ)在存儲(chǔ)器303和主機(jī)服務(wù)器101的外部。
[0031]假定用戶使用設(shè)備103來訪問應(yīng)用316,可以向該用戶提供應(yīng)用的顯示?,F(xiàn)在假定應(yīng)用是web應(yīng)用,例如web電子郵件應(yīng)用、web文檔處理應(yīng)用、多媒體播放器應(yīng)用、社交媒體網(wǎng)絡(luò)應(yīng)用、電子數(shù)據(jù)表應(yīng)用、呈現(xiàn)應(yīng)用、游戲應(yīng)用、圖像編輯應(yīng)用、視頻編輯應(yīng)用或從設(shè)備向服務(wù)器傳送動(dòng)作的任意其他應(yīng)用。如果用戶希望訪問web應(yīng)用,則用戶可以在設(shè)備103上的顯示器上點(diǎn)擊針對(duì)該應(yīng)用的圖標(biāo)、鍵入與該web應(yīng)用相關(guān)聯(lián)的統(tǒng)一資源定位符(URL)或以其他方式訪問該應(yīng)用。該應(yīng)用打開并可以經(jīng)由網(wǎng)頁(yè)(例如圖6中的網(wǎng)頁(yè)611)查看。在一個(gè)實(shí)施例中,網(wǎng)頁(yè)可以提供web應(yīng)用的顯示。
[0032]在另一實(shí)施例中,應(yīng)用可以在設(shè)備103上以及在主機(jī)服務(wù)器101上運(yùn)行,并且當(dāng)用戶訪問網(wǎng)頁(yè)時(shí),用戶可以使用該應(yīng)用,如圖4所示。圖4示出了根據(jù)實(shí)施例應(yīng)用在瀏覽器上運(yùn)行的顯示。例如,設(shè)備103包括運(yùn)行應(yīng)用316的瀏覽器201。在該示例中,應(yīng)用316可以是與在主機(jī)服務(wù)器101上運(yùn)行的應(yīng)用相同的應(yīng)用。備選地,應(yīng)用316可以與在主機(jī)服務(wù)器101上運(yùn)行的應(yīng)用不同。在一個(gè)實(shí)施例中,應(yīng)用316可以在瀏覽器201上運(yùn)行。在該實(shí)施例中,主機(jī)服務(wù)器101可以遠(yuǎn)程存儲(chǔ)與僅在設(shè)備103上運(yùn)行的應(yīng)用316相關(guān)聯(lián)的數(shù)據(jù)。
[0033]圖5是示出了根據(jù)實(shí)施例使用后臺(tái)頁(yè)面腳本的方法的流程圖。在步驟5002處,向在設(shè)備上運(yùn)行的后臺(tái)頁(yè)面腳本注冊(cè)在該設(shè)備上運(yùn)行的多個(gè)網(wǎng)頁(yè)。如圖6所示,在圖1中的設(shè)備103上運(yùn)行的后臺(tái)頁(yè)面腳本614注冊(cè)在設(shè)備103上運(yùn)行的多個(gè)網(wǎng)頁(yè)(例如,網(wǎng)頁(yè)611和網(wǎng)頁(yè)612)。通過圖6中所示的箭頭示出了后臺(tái)頁(yè)面腳本614與多個(gè)網(wǎng)頁(yè)(例如,網(wǎng)頁(yè)611和網(wǎng)頁(yè)612)之間的通信。在一個(gè)實(shí)施例中,多種通信方法包括直接功能呼叫、發(fā)布消息、web意圖(web intents)、利用共享存儲(chǔ)設(shè)備的公布/通知機(jī)制等。
[0034]在圖6和圖7所示的實(shí)施例中,假定使用設(shè)備103的用戶正在使用應(yīng)用316。應(yīng)用316可以是web電子郵件應(yīng)用。當(dāng)用戶運(yùn)行應(yīng)用316時(shí),圖6所示的后臺(tái)頁(yè)面腳本614也運(yùn)行。在一個(gè)實(shí)施例中,對(duì)于一個(gè)應(yīng)用可以僅使用一個(gè)后臺(tái)頁(yè)面腳本,并且如果該應(yīng)用的多個(gè)實(shí)例正在運(yùn)行,則可以僅需要單個(gè)后臺(tái)頁(yè)面腳本。后臺(tái)頁(yè)面腳本614還管理網(wǎng)頁(yè)注冊(cè)器,并在其中注冊(cè)打開的應(yīng)用316的每一個(gè)網(wǎng)頁(yè)。后臺(tái)頁(yè)面腳本614可以對(duì)用戶不可見。后臺(tái)頁(yè)面腳本614可以維護(hù)活動(dòng)頁(yè)面的計(jì)數(shù)器,并保持跟蹤活動(dòng)頁(yè)面。應(yīng)用316可以與后臺(tái)頁(yè)面腳本614進(jìn)行通信,以向后臺(tái)頁(yè)面腳本614通知網(wǎng)頁(yè)何時(shí)打開(因此可以向后臺(tái)頁(yè)面腳本614注冊(cè)該網(wǎng)頁(yè))以及網(wǎng)頁(yè)何時(shí)關(guān)閉(因此可以向后臺(tái)頁(yè)面腳本614注銷該網(wǎng)頁(yè))。以此方式,當(dāng)網(wǎng)頁(yè)關(guān)閉時(shí),該計(jì)數(shù)器遞減。在一個(gè)實(shí)施例中,后臺(tái)頁(yè)面腳本614等待直到該計(jì)數(shù)器減小至零為止(例如當(dāng)沒有網(wǎng)頁(yè)打開時(shí))才發(fā)送動(dòng)作,如下所述。
[0035]用戶可以打開與應(yīng)用316相關(guān)聯(lián)的多個(gè)網(wǎng)頁(yè)(例如,網(wǎng)頁(yè)611和網(wǎng)頁(yè)612)。例如,如果用戶正在閱讀電子郵件,則網(wǎng)頁(yè)611可以向用戶提供電子郵件消息的顯示。用戶可以打開新網(wǎng)頁(yè)612,新網(wǎng)頁(yè)612可以提供用戶正在編寫的新電子郵件消息的顯示。因此,用戶可以利用每一個(gè)窗口來運(yùn)行單獨(dú)的任務(wù),例如,一個(gè)窗口用于執(zhí)行閱讀電子郵件的任務(wù),而另一窗口用于執(zhí)行寫電子郵件的任務(wù)。在一個(gè)實(shí)施例中,用戶可以利用一個(gè)或更多個(gè)窗口來執(zhí)行相同的任務(wù),或者一個(gè)或更多個(gè)窗口可以用于執(zhí)行多個(gè)任務(wù)。
[0036]在一個(gè)實(shí)施例中,應(yīng)用316可以是正在主機(jī)服務(wù)器101上運(yùn)行的web應(yīng)用。因此,在圖6和圖7中,示出了應(yīng)用或向使用設(shè)備103的用戶圖形地顯示所運(yùn)行的應(yīng)用的網(wǎng)頁(yè)的顯不O
[0037]多個(gè)仵備
[0038]在圖7所示的實(shí)施例中,應(yīng)用716包括分頁(yè)式網(wǎng)頁(yè)702。在一個(gè)實(shí)施例中,應(yīng)用716可以是web電子郵件應(yīng)用。分頁(yè)式網(wǎng)頁(yè)702包括網(wǎng)頁(yè)711-A和網(wǎng)頁(yè)711-B。在圖7所示的實(shí)施例中,選擇網(wǎng)頁(yè)711-B(例如通過點(diǎn)擊或選擇網(wǎng)頁(yè)711-B的區(qū)域、通過使用鼠標(biāo)、鍵盤、其他輸入設(shè)備、通過使用具有觸摸屏功能的設(shè)備進(jìn)行觸摸、通過使用語(yǔ)音命令等),因此顯示網(wǎng)頁(yè)711-B的內(nèi)容。網(wǎng)頁(yè)711-B包括:可以包括地址欄或其他信息的區(qū)域702、可以包括收件箱的顯示的區(qū)域704、可以包括聊天記錄的區(qū)域708以及可以包括圖像、視頻或其他多媒體的區(qū)域706。網(wǎng)頁(yè)711-A可以包括與網(wǎng)頁(yè)711-B類似的項(xiàng)目,或者每一個(gè)窗口可以是另一窗口的精確復(fù)制。在與上文關(guān)于圖6所描述的實(shí)施例類似的實(shí)施例中,用戶可以使用網(wǎng)頁(yè)711-A來寫電子郵件消息并且執(zhí)行一個(gè)任務(wù)集合,同時(shí)使用網(wǎng)頁(yè)711-B以使用與網(wǎng)頁(yè)711-A中的任務(wù)相同或不同的任務(wù)中的一個(gè)或更多個(gè)。在一個(gè)實(shí)施例中,網(wǎng)頁(yè)711-A中所呈現(xiàn)的一些或所有任務(wù)可以與網(wǎng)頁(yè)711-B中所呈現(xiàn)的任務(wù)不同。
[0039]在一個(gè)實(shí)施例中,一個(gè)用戶可以使用網(wǎng)頁(yè)711-A來登錄電子郵件賬戶,而相同用戶或另一用戶可以使用網(wǎng)頁(yè)711-B來登錄另一電子郵件賬戶。
[0040]現(xiàn)在假定用戶正坐在汽車的乘客座位上旅行。用戶正在使用上網(wǎng)本并希望使用應(yīng)用716來查看并執(zhí)行與電子郵件賬戶相關(guān)聯(lián)的任務(wù)。當(dāng)用戶打開、進(jìn)入或以其他方式訪問應(yīng)用716中的網(wǎng)頁(yè)711-B時(shí),向后臺(tái)頁(yè)面腳本714注冊(cè)網(wǎng)頁(yè)711-B。在一個(gè)實(shí)施例中,后臺(tái)頁(yè)面腳本714在應(yīng)用716的后臺(tái)運(yùn)行并可以對(duì)用戶不可見。類似地,當(dāng)用戶打開另一分頁(yè)式網(wǎng)頁(yè)711-A或應(yīng)用716中的任意其他網(wǎng)頁(yè)時(shí),向后臺(tái)頁(yè)面腳本714注冊(cè)網(wǎng)頁(yè)711-A。類似地,在圖6所示的實(shí)施例中,如果用戶打開網(wǎng)頁(yè)611或網(wǎng)頁(yè)612,則向在應(yīng)用316的后臺(tái)運(yùn)行的后臺(tái)頁(yè)面腳本614注冊(cè)網(wǎng)頁(yè)611或網(wǎng)頁(yè)612中的每一個(gè)。
[0041]在步驟5004處,在數(shù)據(jù)庫(kù)中緩存多個(gè)網(wǎng)頁(yè)中的一個(gè)網(wǎng)頁(yè)所生成的動(dòng)作。在數(shù)據(jù)庫(kù)204中緩存多個(gè)網(wǎng)頁(yè)(圖6中的網(wǎng)頁(yè)611和網(wǎng)頁(yè)612或圖7中的網(wǎng)頁(yè)711-A和網(wǎng)頁(yè)711-B)中的一個(gè)網(wǎng)頁(yè)所生成的動(dòng)作。在一個(gè)實(shí)施例中,動(dòng)作可以是命令和/或變更,例如保存、刪除、標(biāo)記為重要、選作垃圾信息、移動(dòng)到另一文件夾、發(fā)送、轉(zhuǎn)發(fā)、下載、用星號(hào)標(biāo)記、共享、編輯、添加附件/圖像/鏈接/媒體等。
[0042]在注冊(cè)、登錄或以其他方式訪問電子郵件賬戶之后,可以向用戶呈現(xiàn)示出多個(gè)任務(wù)的顯示。該用戶可以例如查看區(qū)域704中的電子郵件收件箱;區(qū)域708中的聊天記錄和區(qū)域706中的圖像、視頻等。當(dāng)汽車在地下隧道中行進(jìn)時(shí),用戶可能暫時(shí)丟失互聯(lián)網(wǎng)接入(例如由于較差的接收信號(hào))并進(jìn)入離線狀態(tài)。允許用戶繼續(xù)點(diǎn)擊收件箱中的電子郵件并在聊天記錄中鍵入與其好友的聊天消息,而不是與應(yīng)用716斷開。即使當(dāng)汽車在地下隧道中行進(jìn)時(shí)互聯(lián)網(wǎng)連接斷斷續(xù)續(xù)或丟失,用戶仍會(huì)能夠在應(yīng)用716中查看、訪問或草擬電子郵件。在一個(gè)實(shí)施例中,對(duì)與電子郵件賬戶相關(guān)聯(lián)的項(xiàng)目進(jìn)行本地拷貝,并在網(wǎng)頁(yè)711-B上向用戶顯示。也即是說,在設(shè)備103的存儲(chǔ)器203中本地存儲(chǔ)與電子郵件地址相關(guān)聯(lián)的電子郵件消息、聊天消息等??梢栽跀?shù)據(jù)庫(kù)204中或在另一存儲(chǔ)元件(圖2中未示出)中存儲(chǔ)與電子郵件地址相關(guān)聯(lián)的消息等。
[0043]在另一實(shí)施例中,現(xiàn)在假定用戶設(shè)備在延長(zhǎng)的時(shí)間段內(nèi)處于離線狀態(tài)。例如,假定用戶正在不提供無(wú)線互聯(lián)網(wǎng)接入的飛機(jī)上使用他/她的移動(dòng)電話、膝上型計(jì)算機(jī)、上網(wǎng)本等。用戶可以鍵入針對(duì)地址簿中存儲(chǔ)的電子郵件聯(lián)系人的電子郵件消息。即使當(dāng)設(shè)備在延長(zhǎng)的時(shí)間段內(nèi)處于離線狀態(tài),用戶也能夠在電子郵件程序中鍵入電子郵件。該電子郵件被本地存儲(chǔ)在數(shù)據(jù)庫(kù)204中(或圖2中未示出的另一存儲(chǔ)元件中)。
[0044]在數(shù)據(jù)庫(kù)204中緩存用戶所發(fā)出的所有動(dòng)作或命令。例如(在圖7中),假定用戶希望刪除區(qū)域704中的收件箱中顯示的電子郵件消息、在區(qū)域708中顯示的聊天記錄內(nèi)鍵入與朋友的聊天消息并將區(qū)域706中顯示的視頻轉(zhuǎn)發(fā)給另一朋友。當(dāng)用戶發(fā)出這些動(dòng)作時(shí),在數(shù)據(jù)庫(kù)204中緩存每一個(gè)動(dòng)作,使得在向主機(jī)服務(wù)器101成功地發(fā)送動(dòng)作之前,可以對(duì)其進(jìn)行保存。
[0045]現(xiàn)在假定用戶已經(jīng)完成對(duì)電子郵件賬戶的訪問。然后,用戶將通過點(diǎn)擊“x”712來關(guān)閉網(wǎng)頁(yè)711-B。類似地,用戶可以通過點(diǎn)擊“x”713來關(guān)閉網(wǎng)頁(yè)711-A。在一個(gè)實(shí)施例中,用戶可以通過發(fā)出鍵盤命令、語(yǔ)音命令、通過點(diǎn)擊觸發(fā)網(wǎng)頁(yè)的關(guān)閉的備選元件、通過觸摸網(wǎng)頁(yè)的使其關(guān)閉的區(qū)域(如果用戶正在使用具有觸摸屏功能的設(shè)備的話)或通過其他方式來關(guān)閉網(wǎng)頁(yè)。
[0046]在一個(gè)實(shí)施例中,用戶可以關(guān)閉應(yīng)用716或執(zhí)行可以觸發(fā)網(wǎng)頁(yè)的關(guān)閉的另一任務(wù)。一旦網(wǎng)頁(yè)關(guān)閉,后臺(tái)頁(yè)面腳本714就對(duì)其進(jìn)行注銷。在重新建立互聯(lián)網(wǎng)連接之前,動(dòng)作保持緩存在數(shù)據(jù)庫(kù)204中。
[0047]當(dāng)設(shè)備103能夠經(jīng)由網(wǎng)絡(luò)102與主機(jī)服務(wù)器101重新連接時(shí),向主機(jī)服務(wù)器101發(fā)送數(shù)據(jù)庫(kù)204中所緩存的動(dòng)作。在一個(gè)實(shí)施例中,后臺(tái)頁(yè)面腳本714可以使設(shè)備103周期性地ping主機(jī)服務(wù)器101,以確定是否可以進(jìn)行連接以及設(shè)備103是否處于在線狀態(tài)。在另一實(shí)施例中,可以使用其他方式來確定設(shè)備103何時(shí)重新獲得對(duì)互聯(lián)網(wǎng)的接入并且然后可以建立與主機(jī)服務(wù)器101的連接。
[0048]在步驟5006和步驟5008處,響應(yīng)于確定設(shè)備處于在線狀態(tài)并且不再注冊(cè)多個(gè)網(wǎng)頁(yè)中的一個(gè)網(wǎng)頁(yè):后臺(tái)頁(yè)面腳本從數(shù)據(jù)庫(kù)取回動(dòng)作。響應(yīng)于確定設(shè)備103處于在線狀態(tài)并且不再注冊(cè)網(wǎng)頁(yè)711-B,后臺(tái)頁(yè)面腳本714從數(shù)據(jù)庫(kù)204取回動(dòng)作。
[0049]因此,后臺(tái)頁(yè)面腳本714從數(shù)據(jù)庫(kù)204取回動(dòng)作。在步驟5010處,后臺(tái)頁(yè)面腳本發(fā)送動(dòng)作。后臺(tái)頁(yè)面腳本714經(jīng)由網(wǎng)絡(luò)102向主機(jī)服務(wù)器101發(fā)送動(dòng)作。在一個(gè)實(shí)施例中,后臺(tái)頁(yè)面腳本714在取回動(dòng)作并嘗試將它們發(fā)送到主機(jī)服務(wù)器101之前,可以等待預(yù)定時(shí)間。例如,后臺(tái)頁(yè)面腳本714可以等待幾毫秒、一分鐘或根本不等待,以確定設(shè)備103是否回到在線狀態(tài)。[0050]動(dòng)作可以與網(wǎng)頁(yè)相關(guān)聯(lián),并可以基于網(wǎng)頁(yè)被分離。動(dòng)作還可以基于用戶被分離。例如,第一用戶可以對(duì)網(wǎng)頁(yè)執(zhí)行可以與第二用戶所執(zhí)行的動(dòng)作不同的動(dòng)作。
[0051]在當(dāng)網(wǎng)頁(yè)711-B關(guān)閉時(shí)嘗試發(fā)送動(dòng)作時(shí),網(wǎng)頁(yè)711-B被識(shí)別并僅發(fā)送屬于網(wǎng)頁(yè)711-B的動(dòng)作。在一個(gè)實(shí)施例中,如果多個(gè)網(wǎng)頁(yè)打開,則在發(fā)送動(dòng)作之前關(guān)閉所有多個(gè)網(wǎng)頁(yè)。當(dāng)所有多個(gè)網(wǎng)頁(yè)關(guān)閉時(shí),可以發(fā)送所有動(dòng)作,而不需要知道動(dòng)作與各個(gè)網(wǎng)頁(yè)的關(guān)聯(lián)。也即是說,可以發(fā)送所有動(dòng)作,而不需要知道哪個(gè)動(dòng)作與哪個(gè)網(wǎng)頁(yè)相關(guān)聯(lián)。
[0052]在一個(gè)實(shí)施例中,設(shè)備103返回在線狀態(tài)可以被稱為上線事件(online event)。具體而言,當(dāng)設(shè)備103從離線狀態(tài)切換到在線狀態(tài)時(shí),上線事件發(fā)生。在上線事件期間,設(shè)備103可以與主機(jī)服務(wù)器101重新同步。當(dāng)設(shè)備103從在線狀態(tài)切換到離線狀態(tài)時(shí),下線事件(offline event)發(fā)生。
[0053]動(dòng)作的聚集(batching)
[0054]后臺(tái)頁(yè)面腳本714可以向主機(jī)服務(wù)器101發(fā)送數(shù)據(jù)庫(kù)204中存儲(chǔ)的動(dòng)作或命令。在一個(gè)實(shí)施例中,后臺(tái)頁(yè)面腳本714可以在向主機(jī)服務(wù)器101進(jìn)行發(fā)送之前將多個(gè)動(dòng)作聚集在一起。在另一實(shí)施例中,后臺(tái)頁(yè)面腳本714可以在發(fā)送之如僅將相關(guān)動(dòng)作聚集在一起。例如,可以將與電子郵件相關(guān)聯(lián)的所有動(dòng)作聚集在一起,可以將與聊天記錄相關(guān)聯(lián)的所有動(dòng)作聚集在一起等。在另一實(shí)施例中,可以捆綁所有動(dòng)作并同時(shí)對(duì)其進(jìn)行發(fā)送。在另一實(shí)施例中,可以預(yù)先確定有效載荷的大小,并發(fā)送與可以在預(yù)定大小內(nèi)傳送的一樣多的動(dòng)作。
[0055]在一個(gè)實(shí)施例中,可以以動(dòng)作如何被置于隊(duì)列中的順序(例如以先進(jìn)先出的方式)對(duì)動(dòng)作進(jìn)行發(fā)送。在其他實(shí)施例中,可以以先進(jìn)后出、后進(jìn)后出、后進(jìn)先出或任意其他方式進(jìn)行排隊(duì)。
[0056]當(dāng)主機(jī)服務(wù)器101接收到動(dòng)作時(shí),主機(jī)服務(wù)器101應(yīng)用期望的動(dòng)作。例如,如果主機(jī)服務(wù)器101所接收的動(dòng)作指示刪除消息,則主機(jī)服務(wù)器101刪除該消息。當(dāng)用戶再次訪問電子郵件時(shí),該消息被刪除并且不再顯示在電子郵件收件箱中。
[0057]在一個(gè)實(shí)施例中,在后臺(tái)頁(yè)面腳本發(fā)起動(dòng)作的發(fā)送之前,必須關(guān)閉與應(yīng)用相關(guān)聯(lián)的所有網(wǎng)頁(yè)和/或向后臺(tái)頁(yè)面腳本注銷所有網(wǎng)頁(yè)。例如,當(dāng)一些應(yīng)用網(wǎng)頁(yè)打開時(shí),后臺(tái)頁(yè)面腳本可能不能與主機(jī)服務(wù)器同步動(dòng)作,這是因?yàn)榫哂兄貜?fù)動(dòng)作的風(fēng)險(xiǎn)增加。因此,為了避免可能對(duì)主機(jī)服務(wù)器造成額外負(fù)擔(dān)的主機(jī)服務(wù)器進(jìn)行的重復(fù)資料刪除(deduping),后臺(tái)頁(yè)面腳本等待直到所有網(wǎng)頁(yè)關(guān)閉。在主機(jī)服務(wù)器上進(jìn)行重復(fù)資料刪除可能是復(fù)雜的,這是因?yàn)橛捎谙戮€行為,重復(fù)動(dòng)作可能每隔幾小時(shí)和/或幾天發(fā)送。
[0058]如果向每一個(gè)動(dòng)作指派唯一的標(biāo)識(shí),則重復(fù)資料刪除是可能的。因此,唯一的標(biāo)識(shí)可以用于確保去除重復(fù)動(dòng)作并正確地進(jìn)行同步。例如,每當(dāng)在網(wǎng)頁(yè)上執(zhí)行動(dòng)作時(shí),向該動(dòng)作指派唯一標(biāo)識(shí)。當(dāng)下一動(dòng)作發(fā)生時(shí),必須獲得下一個(gè)唯一標(biāo)識(shí),其中,下一個(gè)唯一標(biāo)識(shí)與另一唯一標(biāo)識(shí)不同。因此,所有網(wǎng)頁(yè)必須與相同的指派代理或指派源(例如主機(jī)服務(wù)器101)進(jìn)行通信,以獲得唯一標(biāo)識(shí)。然后,主機(jī)服務(wù)器將接收具有唯一標(biāo)識(shí)的動(dòng)作。唯一標(biāo)識(shí)指派代理必須以先進(jìn)先出的實(shí)現(xiàn)方式來維護(hù)和指派標(biāo)識(shí)。在僅一個(gè)設(shè)備與主機(jī)服務(wù)器101進(jìn)行通信并且該設(shè)備是唯一一個(gè)被給予執(zhí)行動(dòng)作的許可的設(shè)備的實(shí)施例中,唯一標(biāo)識(shí)可以備選地由設(shè)備中所包含的或與設(shè)備進(jìn)行通信的數(shù)據(jù)庫(kù)提供。
[0059]在一個(gè)實(shí)施例中,基于網(wǎng)頁(yè)將動(dòng)作排列在一起。例如,網(wǎng)頁(yè)711-A可以具有需要應(yīng)用的多個(gè)動(dòng)作,并且網(wǎng)頁(yè)711-B可以具有需要應(yīng)用的另外多個(gè)動(dòng)作。針對(duì)網(wǎng)頁(yè)711-A的多個(gè)相應(yīng)動(dòng)作和針對(duì)網(wǎng)頁(yè)711-B的多個(gè)相應(yīng)動(dòng)作可以相互分離地存儲(chǔ)。在成功地發(fā)送隊(duì)列中存儲(chǔ)的動(dòng)作之后,可以從該隊(duì)列中移除動(dòng)作的本地拷貝。在一個(gè)實(shí)施例中,響應(yīng)于對(duì)動(dòng)作的成功發(fā)送的確認(rèn)的接收,后臺(tái)頁(yè)面腳本從數(shù)據(jù)庫(kù)中移除該動(dòng)作。例如,當(dāng)向主機(jī)服務(wù)器101成功地發(fā)送動(dòng)作時(shí)(即當(dāng)設(shè)備103處于在線狀態(tài)時(shí)),主機(jī)服務(wù)器101可以發(fā)送確認(rèn)的接收。然后,可以從數(shù)據(jù)庫(kù)204中移除該動(dòng)作。因此,在設(shè)備103 (以及任意其他設(shè)備)與主機(jī)服務(wù)器101之間對(duì)動(dòng)作進(jìn)行同步。
[0060]在一個(gè)實(shí)施例中,在一個(gè)或更多個(gè)網(wǎng)頁(yè)關(guān)閉之后,后臺(tái)頁(yè)面腳本向服務(wù)器101發(fā)送在數(shù)據(jù)庫(kù)204中存儲(chǔ)的與所關(guān)閉的頁(yè)面相關(guān)聯(lián)的動(dòng)作。如果在此發(fā)送期間,使用設(shè)備103的用戶發(fā)出用于重新打開網(wǎng)頁(yè)711-B或打開與應(yīng)用716相關(guān)聯(lián)的另一網(wǎng)頁(yè)的命令,則后臺(tái)頁(yè)面腳本714可以向用戶通知其處于忙碌狀態(tài)。在一個(gè)實(shí)施例中,后臺(tái)頁(yè)面腳本714可以在完成向主機(jī)服務(wù)器101發(fā)送動(dòng)作之前忽略對(duì)打開另一網(wǎng)頁(yè)或重新打開網(wǎng)頁(yè)的請(qǐng)求和/或延遲加載網(wǎng)頁(yè)。在一個(gè)實(shí)施例中,后臺(tái)頁(yè)面腳本714可以在發(fā)送完成之前鎖定應(yīng)用和網(wǎng)頁(yè)。例如,可以向用戶提供文本消息框,該文本消息框顯示“你的動(dòng)作正在發(fā)送,請(qǐng)稍等片刻?!眰溥x地,可以在發(fā)送期間向用戶顯示諸如沙漏等的圖標(biāo)。在一個(gè)實(shí)施例中,后臺(tái)頁(yè)面腳本714與前臺(tái)頁(yè)面之間的雙向握手可以向后臺(tái)請(qǐng)求加載排隊(duì)的動(dòng)作的許可。前臺(tái)頁(yè)面可以發(fā)送用于請(qǐng)求許可的消息。在此期間,在等待響應(yīng)時(shí),可以顯示旋轉(zhuǎn)亮圈或沙漏(如果必要的話)。在接收到許可之后,后臺(tái)頁(yè)面腳本714可以在能夠安全地加載動(dòng)作時(shí)發(fā)送消息。
[0061]在一個(gè)實(shí)施例中,如果動(dòng)作的發(fā)送不成功(例如接收信號(hào)發(fā)生中斷),則后臺(tái)頁(yè)面腳本714預(yù)先考慮失敗的動(dòng)作,并向主機(jī)服務(wù)器101重傳失敗的動(dòng)作。
[0062]當(dāng)已經(jīng)向主機(jī)服務(wù)器101發(fā)送動(dòng)作并且設(shè)備103保持處于在線狀態(tài)時(shí),后臺(tái)頁(yè)面腳本714然后停止控制動(dòng)作的發(fā)送。也即是說,當(dāng)設(shè)備103返回在線時(shí),網(wǎng)頁(yè)可以維護(hù)其自己的內(nèi)部動(dòng)作隊(duì)列,并直接向主機(jī)服務(wù)器101發(fā)送動(dòng)作,而無(wú)需后臺(tái)頁(yè)面腳本714的介入。在一個(gè)實(shí)施例中,多個(gè)網(wǎng)頁(yè)中的一個(gè)網(wǎng)頁(yè)(例如網(wǎng)頁(yè)711-B)在數(shù)據(jù)庫(kù)204中緩存第二動(dòng)作,(向主機(jī)服務(wù)器101)發(fā)送該第二動(dòng)作并通過多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)從數(shù)據(jù)庫(kù)214中移除該第二動(dòng)作。在一個(gè)實(shí)施例中,當(dāng)設(shè)備103處于在線狀態(tài)時(shí),網(wǎng)頁(yè)可以維護(hù)其自己的內(nèi)部動(dòng)作隊(duì)列,并且向保存在所有網(wǎng)頁(yè)中發(fā)生的所有動(dòng)作的通用隊(duì)列(其可以由后臺(tái)頁(yè)面腳本714訪問)添加動(dòng)作。在一個(gè)實(shí)施例中,在對(duì)網(wǎng)頁(yè)注冊(cè)時(shí),后臺(tái)頁(yè)面腳本714對(duì)計(jì)數(shù)器進(jìn)行遞增。
[0063]在一個(gè)實(shí)施例中,響應(yīng)于對(duì)第二動(dòng)作的成功發(fā)送的第二確認(rèn)的接收,發(fā)生從數(shù)據(jù)庫(kù)204中移除該第二動(dòng)作。主機(jī)服務(wù)器101發(fā)送該接收。
[0064]在一個(gè)實(shí)施例中,多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)向后臺(tái)頁(yè)面腳本發(fā)送不再注冊(cè)的請(qǐng)求。例如,用戶可以關(guān)閉網(wǎng)頁(yè)711-A,因此網(wǎng)頁(yè)711-A向后臺(tái)頁(yè)面腳本714發(fā)送不再注冊(cè)(或注銷)的請(qǐng)求。因此,發(fā)送該不再注冊(cè)的請(qǐng)求響應(yīng)于接收到用戶關(guān)閉多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)的請(qǐng)求。
[0065]當(dāng)處于在線狀態(tài)時(shí),在發(fā)送動(dòng)作隊(duì)列之后,可以從相應(yīng)的網(wǎng)頁(yè)隊(duì)列以及通用隊(duì)列中移除這些動(dòng)作。然而,如果在完全發(fā)送動(dòng)作隊(duì)列之前設(shè)備103離線,則后臺(tái)頁(yè)面腳本714取得控制,如上所述。
[0066]在一個(gè)實(shí)施例中,多個(gè)網(wǎng)頁(yè)中的每一個(gè)與以下各項(xiàng)中的至少一項(xiàng)相關(guān)聯(lián):電子郵件應(yīng)用;web文檔處理應(yīng)用;多媒體播放器應(yīng)用;社交媒體網(wǎng)絡(luò)應(yīng)用;電子數(shù)據(jù)表應(yīng)用;呈現(xiàn)應(yīng)用;游戲應(yīng)用;圖像編輯應(yīng)用和視頻編輯應(yīng)用。
[0067]在一個(gè)實(shí)施例中,定期地重新加載或更新后臺(tái)頁(yè)面腳本714,使得在設(shè)備103處保持后臺(tái)頁(yè)面腳本的最新版本。當(dāng)在后臺(tái)頁(yè)面腳本714中發(fā)生更新時(shí),然后必須向后臺(tái)頁(yè)面腳本714重新注冊(cè)所有網(wǎng)頁(yè)(例如網(wǎng)頁(yè)711-A和711-B等)。后臺(tái)頁(yè)面腳本714可以為上次加載后臺(tái)頁(yè)面腳本714寫時(shí)間戳。然后,所有網(wǎng)頁(yè)(例如前臺(tái)頁(yè)面)可以查看時(shí)間戳以確定需要重新注冊(cè)。前臺(tái)頁(yè)面可以監(jiān)視共享存儲(chǔ)設(shè)備中的時(shí)間戳,并且如果時(shí)間戳的值改變則進(jìn)行重新注冊(cè)。例如,通過使用HTML(超文本標(biāo)記語(yǔ)言)5LocalStorage,后臺(tái)頁(yè)面腳本714 可以每當(dāng)加載時(shí)執(zhí)行 window.1ocalStorage.backgroundLoaded = now();。前臺(tái)頁(yè)面可以監(jiān)聽屬性“backgroundLoaded”上的LocalStorage改變事件,并且每當(dāng)該值改變時(shí),進(jìn)行重新注冊(cè)。
[0068]在一個(gè)實(shí)施例中,數(shù)據(jù)庫(kù)204可以鎖定動(dòng)作以防止重復(fù)發(fā)送相同動(dòng)作。
[0069]在一個(gè)實(shí)施例中,后臺(tái)頁(yè)面腳本可以管理所有動(dòng)作的同步,不論設(shè)備是處于在線狀態(tài)還是處于離線狀態(tài)。因此,后臺(tái)頁(yè)面腳本將管理所有動(dòng)作的發(fā)送。在本實(shí)施例中,后臺(tái)頁(yè)面腳本必須始終運(yùn)行。
[0070]圖8是根據(jù)實(shí)施例用于對(duì)動(dòng)作進(jìn)行同步的方法的流程圖。如圖8所示,在網(wǎng)頁(yè)中生成多個(gè)動(dòng)作。因此,當(dāng)顯示網(wǎng)頁(yè)的設(shè)備回到在線狀態(tài)時(shí),必須與主機(jī)服務(wù)器同步多個(gè)動(dòng)作。
[0071]在步驟8002處,設(shè)備經(jīng)由互聯(lián)網(wǎng)訪問應(yīng)用。例如,設(shè)備103經(jīng)由互聯(lián)網(wǎng)(即網(wǎng)絡(luò)102)訪問應(yīng)用316。
[0072]在步驟8004處,設(shè)備運(yùn)行與應(yīng)用相關(guān)聯(lián)的后臺(tái)頁(yè)面腳本。設(shè)備103運(yùn)行與應(yīng)用316相關(guān)聯(lián)的后臺(tái)頁(yè)面腳本614。后臺(tái)頁(yè)面腳本614可以在應(yīng)用316的后臺(tái)運(yùn)行,如圖6所
/Jn ο
[0073]在步驟8006處,在后臺(tái)頁(yè)面中注冊(cè)與該應(yīng)用相關(guān)聯(lián)的第一網(wǎng)頁(yè)和與該應(yīng)用相關(guān)聯(lián)的第二網(wǎng)頁(yè)。在后臺(tái)頁(yè)面腳本614中注冊(cè)與應(yīng)用316相關(guān)聯(lián)的第一網(wǎng)頁(yè)611和與應(yīng)用316相關(guān)聯(lián)的第二網(wǎng)頁(yè)612。
[0074]在步驟8008處,當(dāng)設(shè)備處于離線狀態(tài)時(shí),在數(shù)據(jù)庫(kù)中存儲(chǔ)第一網(wǎng)頁(yè)所生成的第一動(dòng)作和第二網(wǎng)頁(yè)所生成的第二動(dòng)作。當(dāng)設(shè)備103處于離線狀態(tài)時(shí),在數(shù)據(jù)庫(kù)204中存儲(chǔ)第一網(wǎng)頁(yè)611所生成的第一動(dòng)作和第二網(wǎng)頁(yè)612所生成的第二動(dòng)作。例如,當(dāng)設(shè)備103處于離線狀態(tài)時(shí),使用設(shè)備103的用戶可以希望在網(wǎng)頁(yè)611中標(biāo)記重要電子郵件(例如第一動(dòng)作)并在網(wǎng)頁(yè)612中刪除垃圾電子郵件(例如第二動(dòng)作)。相應(yīng)的命令或動(dòng)作被存儲(chǔ)在數(shù)據(jù)庫(kù)204中。
[0075]在步驟8010處,確定第一網(wǎng)頁(yè)和第二網(wǎng)頁(yè)被關(guān)閉。(例如由后臺(tái)頁(yè)面腳本614)確定第一網(wǎng)頁(yè)611和第二網(wǎng)頁(yè)612被關(guān)閉。例如,當(dāng)完成電子郵件應(yīng)用時(shí),用戶可以關(guān)閉網(wǎng)頁(yè)。
[0076]在步驟8012處,向后臺(tái)頁(yè)面注銷第一網(wǎng)頁(yè)和第二網(wǎng)頁(yè)。在第一網(wǎng)頁(yè)611和第二網(wǎng)頁(yè)612被關(guān)閉之后,后臺(tái)頁(yè)面腳本614可以以上述方式注銷第一網(wǎng)頁(yè)611和第二網(wǎng)頁(yè)612。因此,后臺(tái)頁(yè)面腳本614中的計(jì)數(shù)器遞減,并確定與應(yīng)用316相關(guān)聯(lián)的所有網(wǎng)頁(yè)都關(guān)閉。
[0077]在步驟8014處,后臺(tái)頁(yè)面腳本從數(shù)據(jù)庫(kù)取回第一動(dòng)作和第二動(dòng)作。后臺(tái)頁(yè)面腳本614從數(shù)據(jù)庫(kù)204取回第一動(dòng)作和第二動(dòng)作??梢砸韵冗M(jìn)先出的方式對(duì)第一動(dòng)作和第二動(dòng)作進(jìn)行排隊(duì)。此外,第一動(dòng)作和第二動(dòng)作可以分別包括針對(duì)每一個(gè)相應(yīng)網(wǎng)頁(yè)的聚集動(dòng)作。設(shè)備103可以確定設(shè)備103已經(jīng)返回在線狀態(tài)。[0078]在步驟8016處,經(jīng)由互聯(lián)網(wǎng)向服務(wù)器發(fā)送第一動(dòng)作和第二動(dòng)作。經(jīng)由互聯(lián)網(wǎng)(即網(wǎng)絡(luò)102)向主機(jī)服務(wù)器101發(fā)送第一動(dòng)作和第二動(dòng)作。后臺(tái)頁(yè)面腳本614可以向主機(jī)服務(wù)器101發(fā)送從數(shù)據(jù)庫(kù)204取回的第一動(dòng)作和第二動(dòng)作。
[0079]在各種實(shí)施例中,可以以與所述或所示的特定順序不同的順序來執(zhí)行本文所述的方法步驟(包括圖5和圖8中所述的方法步驟)。在其他實(shí)施例中,可以提供其他步驟或者可以從所述方法中消除步驟。
[0080]本文所述的系統(tǒng)、裝置和方法可以使用數(shù)字電路或使用一個(gè)或更多個(gè)計(jì)算機(jī)(其使用公知的計(jì)算機(jī)處理器、存儲(chǔ)單元、存儲(chǔ)設(shè)備、計(jì)算機(jī)軟件和其他組件)實(shí)現(xiàn)。一般而言,計(jì)算機(jī)包括用于執(zhí)行指令的處理器和用于存儲(chǔ)指令和數(shù)據(jù)的一個(gè)或更多個(gè)存儲(chǔ)器。計(jì)算機(jī)還可以包括或耦合到一個(gè)或更多個(gè)大容量存儲(chǔ)設(shè)備(例如,一個(gè)或更多個(gè)磁盤、內(nèi)部硬盤和可拆卸磁盤、磁光盤、光盤等)。
[0081]本文所述的系統(tǒng)、裝置和方法可以使用以客戶端-服務(wù)器關(guān)系操作的計(jì)算機(jī)來實(shí)現(xiàn)。一般而言,在這種系統(tǒng)中,客戶端計(jì)算機(jī)遠(yuǎn)離服務(wù)器計(jì)算機(jī),并經(jīng)由網(wǎng)絡(luò)進(jìn)行交互。客戶端-服務(wù)器關(guān)系可以由在相應(yīng)客戶端計(jì)算機(jī)和服務(wù)器計(jì)算機(jī)上運(yùn)行的計(jì)算機(jī)程序來定乂和控制。
[0082]可以在基于網(wǎng)絡(luò)的云計(jì)算系統(tǒng)中使用本文所述的系統(tǒng)、裝置和方法。在這種基于網(wǎng)絡(luò)的云計(jì)算系統(tǒng)中,與網(wǎng)絡(luò)相連的服務(wù)器或另一處理器經(jīng)由網(wǎng)絡(luò)與一個(gè)或更多個(gè)客戶端計(jì)算機(jī)進(jìn)行通信??蛻舳擞?jì)算機(jī)可以經(jīng)由例如駐留在該客戶端計(jì)算機(jī)上并在該客戶端計(jì)算機(jī)上操作的網(wǎng)絡(luò)瀏覽器應(yīng)用與服務(wù)器進(jìn)行通信。客戶端計(jì)算機(jī)可以在服務(wù)器上存儲(chǔ)數(shù)據(jù),并經(jīng)由網(wǎng)絡(luò)訪問數(shù)據(jù)??蛻舳擞?jì)算機(jī)可以經(jīng)由網(wǎng)絡(luò)向服務(wù)器發(fā)送對(duì)數(shù)據(jù)的請(qǐng)求或?qū)υ诰€服務(wù)的請(qǐng)求。服務(wù)器可以執(zhí)行所請(qǐng)求的服務(wù),并向客戶端計(jì)算機(jī)提供數(shù)據(jù)。服務(wù)器還可以發(fā)送適合于使客戶端計(jì)算機(jī)執(zhí)行指定功能(例如執(zhí)行計(jì)算、在屏幕上顯示指定數(shù)據(jù)等)的數(shù)據(jù)。例如,服務(wù)器可以發(fā)送適合于使客戶端計(jì)算機(jī)執(zhí)行本文所述的方法步驟中的一個(gè)或更多個(gè)方法步驟(包括圖5和圖8的步驟中的一個(gè)或更多個(gè)步驟)的請(qǐng)求。本文所述方法的特定步驟(包括圖5和圖8的步驟中的一個(gè)或更多個(gè)步驟)可以由基于網(wǎng)絡(luò)的云計(jì)算系統(tǒng)中的服務(wù)器或另一處理器運(yùn)行。本文所述的方法的特定步驟(包括圖5和圖8的步驟中的一個(gè)或更多個(gè)步驟)可以由基于網(wǎng)絡(luò)的云計(jì)算系統(tǒng)中的客戶端計(jì)算機(jī)執(zhí)行。本文所述的方法的步驟(包括圖5和圖8的步驟中的一個(gè)或更多個(gè)步驟)可以由基于網(wǎng)絡(luò)的云計(jì)算系統(tǒng)中的服務(wù)器和/或客戶端計(jì)算機(jī)以任意組合運(yùn)行。
[0083]可以使用計(jì)算機(jī)程序產(chǎn)品來實(shí)現(xiàn)本文所述的系統(tǒng)、裝置和方法,該計(jì)算機(jī)程序產(chǎn)品有形地具體實(shí)現(xiàn)在信息載體(例如非瞬時(shí)機(jī)器可讀存儲(chǔ)設(shè)備)中以由可編程處理器執(zhí)行;并且可以使用可以由這種處理器執(zhí)行的一個(gè)或更多個(gè)計(jì)算機(jī)程序來執(zhí)行本文所述的方法步驟(包括圖5和圖8的步驟中的一個(gè)或更多個(gè)步驟)。計(jì)算機(jī)程序是可以直接地或間接地在計(jì)算機(jī)中使用以執(zhí)行特定活動(dòng)或引起特定結(jié)果的計(jì)算機(jī)程序指令的集合??梢砸匀我庑问降木幊陶Z(yǔ)言(包括編譯性語(yǔ)言或解釋性語(yǔ)言)來寫計(jì)算機(jī)程序,并且可以以任意形式(包括作為獨(dú)立程序或作為模塊、組件、子例程或適合于在計(jì)算環(huán)境中使用的其他單元)部署計(jì)算機(jī)程序。
[0084]圖9中示出了可以用于實(shí)現(xiàn)本文所述的系統(tǒng)、裝置和方法的示例性計(jì)算機(jī)的高層次框圖。計(jì)算機(jī)900包括與數(shù)據(jù)存儲(chǔ)設(shè)備902和存儲(chǔ)器903可操作地耦合的處理器901。處理器901通過執(zhí)行定義這些操作的計(jì)算機(jī)程序指令來控制計(jì)算機(jī)900的整體操作。計(jì)算機(jī)程序指令可以存儲(chǔ)在數(shù)據(jù)存儲(chǔ)設(shè)備902或其他計(jì)算機(jī)可讀介質(zhì)中,并可以在期望執(zhí)行該計(jì)算機(jī)程序指令時(shí)被加載到存儲(chǔ)器903中。因此,圖5和圖8的方法步驟可以由在存儲(chǔ)器903和/或數(shù)據(jù)存儲(chǔ)設(shè)備902中存儲(chǔ)的計(jì)算機(jī)程序指令來定義并由執(zhí)行計(jì)算機(jī)程序指令的處理器901來控制。例如,計(jì)算機(jī)程序指令可以實(shí)現(xiàn)為由本領(lǐng)域技術(shù)人員編程以執(zhí)行圖5和圖8的方法步驟所定義的算法的計(jì)算機(jī)可執(zhí)行代碼。因此,通過執(zhí)行計(jì)算機(jī)程序指令,處理器901執(zhí)行圖5和圖8的方法步驟所定義的算法。計(jì)算機(jī)900還包括用于經(jīng)由網(wǎng)絡(luò)與其他設(shè)備進(jìn)行通信的一個(gè)或更多個(gè)網(wǎng)絡(luò)接口 904。計(jì)算機(jī)900還包括能夠?qū)崿F(xiàn)與計(jì)算機(jī)900的用戶交互的一個(gè)或更多個(gè)輸入/輸出設(shè)備905 (例如顯示器、鍵盤、鼠標(biāo)、揚(yáng)聲器、按鈕等)。
[0085]處理器901可以包括通用微處理器和專用微處理器,并且可以是計(jì)算機(jī)900的單個(gè)處理器或多個(gè)處理器之一。處理器901可以包括例如一個(gè)或更多個(gè)中央處理單元(CPU)。處理器901、數(shù)據(jù)存儲(chǔ)設(shè)備902和/或存儲(chǔ)器903可以包括以下各項(xiàng)、由以下各項(xiàng)補(bǔ)充或者并入到以下各項(xiàng)中:一個(gè)或多個(gè)專用集成電路(ASIC)和/或一個(gè)或多個(gè)現(xiàn)場(chǎng)可編程門陣列(FPGA)。
[0086]數(shù)據(jù)存儲(chǔ)設(shè)備902和存儲(chǔ)器903均包括有形非瞬時(shí)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。數(shù)據(jù)存儲(chǔ)設(shè)備902和存儲(chǔ)器903均可以包括高速隨機(jī)存取存儲(chǔ)器,例如,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、雙倍數(shù)據(jù)速率同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DDR RAM)或其他隨機(jī)存取固態(tài)存儲(chǔ)設(shè)備,并可以包括非易失性存儲(chǔ)器,例如,一個(gè)或更多個(gè)磁盤存儲(chǔ)設(shè)備(例如內(nèi)部硬盤和可拆卸磁盤)、磁光盤存儲(chǔ)設(shè)備、光盤存儲(chǔ)設(shè)備、閃存設(shè)備、半導(dǎo)體存儲(chǔ)設(shè)備(例如,可擦寫可編程只讀存儲(chǔ)器(EPROM)、電可擦寫可編程只讀存儲(chǔ)器(EEPROM))、壓縮光盤只讀存儲(chǔ)器(⑶-ROM)、數(shù)字多功能光盤只讀存儲(chǔ)器(DVD-ROM)盤或其他非易失性固態(tài)存儲(chǔ)設(shè)備。
[0087]輸入/輸出設(shè)備905可以包括外圍設(shè)備(例如,打印機(jī)、掃描儀、顯示屏等)。例如,輸入/輸出設(shè)備905可以包括:用于向用戶顯示信息的顯示設(shè)備(例如,陰極射線管(CRT)監(jiān)視器或液晶顯示器(LCD)監(jiān)視器)、鍵盤和用戶可以使用以向計(jì)算機(jī)900提供輸入的定點(diǎn)設(shè)備(例如鼠標(biāo)或軌跡球)。
[0088]可以使用計(jì)算機(jī)(例如計(jì)算機(jī)900)來實(shí)現(xiàn)本文所討論的系統(tǒng)和裝置(包括設(shè)備103、主機(jī)服務(wù)器101、瀏覽器201、顯示器202、存儲(chǔ)器203、數(shù)據(jù)庫(kù)204、處理器205、處理器302、存儲(chǔ)器303和應(yīng)用316)中的任意一個(gè)或全部。
[0089]本領(lǐng)域技術(shù)人員將認(rèn)識(shí)到,實(shí)際計(jì)算機(jī)或計(jì)算機(jī)系統(tǒng)的實(shí)現(xiàn)也可以具有其他結(jié)構(gòu)并可以包含其他組件,并且圖9是這種計(jì)算機(jī)的組件中的一些組件的高層次表示以用于說明的目的。
[0090]前面的詳細(xì)描述應(yīng)被理解為在每一個(gè)方面都是說明性和示例性的,而不是限制性的,并且本文公開的本發(fā)明的范圍不應(yīng)根據(jù)詳細(xì)描述來確定,而是如根據(jù)專利法準(zhǔn)許的全部范圍所解釋的根據(jù)權(quán)利要求來確定。將理解的是,本文所示和描述的實(shí)施例僅說明本發(fā)明的原理并且本領(lǐng)域技術(shù)人員可以在不偏離本發(fā)明的范圍和精神的情況下執(zhí)行多個(gè)修改。本領(lǐng)域技術(shù)人員可以在不偏離本發(fā)明的范圍和精神的情況下實(shí)現(xiàn)多個(gè)其他特征組合。
【權(quán)利要求】
1.一種方法,包括: 向在設(shè)備上運(yùn)行的后臺(tái)頁(yè)面腳本注冊(cè)在所述設(shè)備上運(yùn)行的多個(gè)網(wǎng)頁(yè); 在數(shù)據(jù)庫(kù)中緩存所述多個(gè)網(wǎng)頁(yè)中的一個(gè)網(wǎng)頁(yè)所生成的動(dòng)作;以及 響應(yīng)于確定所述設(shè)備處于在線狀態(tài)以及不再注冊(cè)所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè): 所述后臺(tái)頁(yè)面腳本從所述數(shù)據(jù)庫(kù)取回所述動(dòng)作;以及 所述后臺(tái)頁(yè)面腳本發(fā)送所述動(dòng)作。
2.根據(jù)權(quán)利要求1所述的方法,還包括: 所述后臺(tái)頁(yè)面腳本向主機(jī)服務(wù)器發(fā)送所述動(dòng)作。
3.根據(jù)權(quán)利要求1所述的方法,還包括: 所述后臺(tái)頁(yè)面腳本響應(yīng)于對(duì)所述動(dòng)作的成功發(fā)送的確認(rèn)的接收,從所述數(shù)據(jù)庫(kù)中移除所述動(dòng)作。
4.根據(jù)權(quán)利要求3所述的方法,還包括: 所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)在所述數(shù)據(jù)庫(kù)中緩存第二動(dòng)作; 所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)發(fā)送所述第二動(dòng)作;以及 所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)從所述數(shù)據(jù)庫(kù)中移除所述第二動(dòng)作。
5.根據(jù)權(quán)利要求4所述的方法,還包括: 所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)向所述后臺(tái)頁(yè)面腳本發(fā)送不再注冊(cè)的請(qǐng)求。
6.根據(jù)權(quán)利要求4所述的方法,其中,響應(yīng)于對(duì)所述第二動(dòng)作的成功發(fā)送的第二確認(rèn)的接收,發(fā)生從所述數(shù)據(jù)庫(kù)中移除所述第二動(dòng)作。
7.根據(jù)權(quán)利要求5所述的方法,還包括: 響應(yīng)于接收到用戶關(guān)閉所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)的請(qǐng)求,發(fā)送所述不再注冊(cè)的請(qǐng)求。
8.根據(jù)權(quán)利要求1所述的方法,還包括: 在所述數(shù)據(jù)庫(kù)中鎖定所述動(dòng)作。
9.一種存儲(chǔ)有計(jì)算機(jī)程序指令的非瞬時(shí)性計(jì)算機(jī)可讀介質(zhì),當(dāng)在處理器上執(zhí)行所述計(jì)算機(jī)程序指令時(shí),所述計(jì)算機(jī)程序指令使所述處理器執(zhí)行包括以下步驟的方法: 向在設(shè)備上運(yùn)行的后臺(tái)頁(yè)面腳本注冊(cè)在所述設(shè)備上運(yùn)行的多個(gè)網(wǎng)頁(yè); 在數(shù)據(jù)庫(kù)中緩存所述多個(gè)網(wǎng)頁(yè)中的一個(gè)網(wǎng)頁(yè)所生成的動(dòng)作;以及 響應(yīng)于確定所述設(shè)備處于在線狀態(tài)以及不再注冊(cè)所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè): 所述后臺(tái)頁(yè)面腳本從所述數(shù)據(jù)庫(kù)取回所述動(dòng)作;以及 所述后臺(tái)頁(yè)面腳本發(fā)送所述動(dòng)作。
10.根據(jù)權(quán)利要求9所述的非瞬時(shí)性計(jì)算機(jī)可讀介質(zhì),還包括定義以下步驟的指令: 所述后臺(tái)頁(yè)面腳本向主機(jī)服務(wù)器發(fā)送所述動(dòng)作。
11.根據(jù)權(quán)利要求9所述的非瞬時(shí)性計(jì)算機(jī)可讀介質(zhì),還包括定義以下步驟的指令: 所述后臺(tái)頁(yè)面腳本響應(yīng)于對(duì)所述動(dòng)作的成功發(fā)送的確認(rèn)的接收,從所述數(shù)據(jù)庫(kù)中移除所述動(dòng)作。
12.根據(jù)權(quán)利要求11所述的非瞬時(shí)性計(jì)算機(jī)可讀介質(zhì),還包括定義以下步驟的指令: 所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)在所述數(shù)據(jù)庫(kù)中緩存第二動(dòng)作; 所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)發(fā)送所述第二動(dòng)作;以及所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)從所述數(shù)據(jù)庫(kù)中移除所述第二動(dòng)作。
13.根據(jù)權(quán)利要求12所述的非瞬時(shí)性計(jì)算機(jī)可讀介質(zhì),還包括定義以下步驟的指令: 所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)向所述后臺(tái)頁(yè)面腳本發(fā)送不再注冊(cè)的請(qǐng)求。
14.根據(jù)權(quán)利要求12所述的非瞬時(shí)性計(jì)算機(jī)可讀介質(zhì),其中,響應(yīng)于對(duì)所述第二動(dòng)作的成功發(fā)送的第二確認(rèn)的接收,發(fā)生從所述數(shù)據(jù)庫(kù)中移除所述第二動(dòng)作。
15.根據(jù)權(quán)利要求13所述的非瞬時(shí)性計(jì)算機(jī)可讀介質(zhì),其中,響應(yīng)于接收到用戶關(guān)閉所述多個(gè)網(wǎng)頁(yè)中的所述一個(gè)網(wǎng)頁(yè)的請(qǐng)求,發(fā)送所述不再注冊(cè)的請(qǐng)求。
16.根據(jù)權(quán)利要求9所述的非瞬時(shí)性計(jì)算機(jī)可讀介質(zhì),還包括定義以下步驟的指令: 在所述數(shù)據(jù)庫(kù)中鎖定所述動(dòng)作。
17.一種方法,包括: 設(shè)備經(jīng)由互聯(lián)網(wǎng)訪問應(yīng)用; 所述設(shè)備運(yùn)行與所述應(yīng)用相關(guān)聯(lián)的后臺(tái)頁(yè)面腳本; 在后臺(tái)頁(yè)面中注冊(cè)與所述應(yīng)用相關(guān)聯(lián)的第一網(wǎng)頁(yè)和與所述應(yīng)用相關(guān)聯(lián)的第二網(wǎng)頁(yè);當(dāng)所述設(shè)備處于離線狀態(tài)時(shí),在數(shù)據(jù)庫(kù)中存儲(chǔ)所述第一網(wǎng)頁(yè)所生成的第一動(dòng)作和所述第二網(wǎng)頁(yè)所生成的第二動(dòng)作; 確定所述第一網(wǎng)頁(yè)和所述第二網(wǎng)頁(yè)被關(guān)閉; 向所述后臺(tái)頁(yè)面注銷所述第一網(wǎng)頁(yè)和所述第二網(wǎng)頁(yè); 所述后臺(tái)頁(yè)面腳本從所述數(shù)據(jù)庫(kù)取回所述第一動(dòng)作和所述第二動(dòng)作;以及 經(jīng)由所述互聯(lián)網(wǎng)向服務(wù)器發(fā)送所述第一動(dòng)作和所述第二動(dòng)作。
18.根據(jù)權(quán)利要求17所述的方法,還包括: 所述后臺(tái)頁(yè)面腳本響應(yīng)于來自所述服務(wù)器的對(duì)所述第一動(dòng)作和所述第二動(dòng)作的成功發(fā)送的確認(rèn)的接收,從所述數(shù)據(jù)庫(kù)中移除所述第一動(dòng)作和所述第二動(dòng)作。
19.根據(jù)權(quán)利要求17所述的方法,其中,所述注銷響應(yīng)于接收到不再注冊(cè)所述第一網(wǎng)頁(yè)和所述第二網(wǎng)頁(yè)的請(qǐng)求。
20.根據(jù)權(quán)利要求17所述的方法,其中,所述第一網(wǎng)頁(yè)和所述第二網(wǎng)頁(yè)中至少一個(gè)與以下各項(xiàng)中的至少一項(xiàng)相關(guān)聯(lián): 電子郵件應(yīng)用; web文檔處理應(yīng)用; 多媒體播放器應(yīng)用; 社交媒體網(wǎng)絡(luò)應(yīng)用; 電子數(shù)據(jù)表應(yīng)用; 呈現(xiàn)應(yīng)用; 游戲應(yīng)用; 圖像編輯應(yīng)用;以及 視頻編輯應(yīng)用。
【文檔編號(hào)】G06F17/30GK103765420SQ201280042062
【公開日】2014年4月30日 申請(qǐng)日期:2012年8月17日 優(yōu)先權(quán)日:2011年8月31日
【發(fā)明者】馬修·博洛汗 申請(qǐng)人:谷歌公司