用于網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展的數(shù)據(jù)存儲(chǔ)層級(jí)的制作方法
【專利摘要】提供對(duì)服務(wù)器處的第一層級(jí)的有限永久性存儲(chǔ)的存取??缗c用戶賬戶相關(guān)聯(lián)的裝置使來自所述第一層級(jí)的第一組數(shù)據(jù)同步化。提供對(duì)本地、有形非易失性存儲(chǔ)媒體上的第二層級(jí)的永久性存儲(chǔ)的存取,且提供對(duì)本地、有形易失性存儲(chǔ)媒體上的第三層級(jí)的暫時(shí)性存儲(chǔ)的存取。網(wǎng)頁瀏覽器從網(wǎng)頁應(yīng)用程序或?yàn)g覽器擴(kuò)展接收存儲(chǔ)請(qǐng)求。所述請(qǐng)求包含與所述網(wǎng)頁應(yīng)用程序或?yàn)g覽器擴(kuò)展的特征相關(guān)聯(lián)的數(shù)據(jù)存儲(chǔ)層級(jí)的類型。所述類型包含所述第一層級(jí)的遠(yuǎn)程有限永久性存儲(chǔ)、所述第二層級(jí)本地永久性存儲(chǔ)或所述第三層級(jí)的本地暫時(shí)性存儲(chǔ)中的至少一者。所述網(wǎng)頁應(yīng)用程序或?yàn)g覽器擴(kuò)展的至少一個(gè)特征與所述數(shù)據(jù)存儲(chǔ)層級(jí)相關(guān)聯(lián)。
【專利說明】用于網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展的數(shù)據(jù)存儲(chǔ)層級(jí)
[0001] 相關(guān)申請(qǐng)案的奪叉參考
[0002] 本申請(qǐng)案主張2012年3月9日申請(qǐng)的標(biāo)題為"用于網(wǎng)頁應(yīng)用程序和瀏覽器 擴(kuò)展的數(shù)據(jù)存儲(chǔ)層級(jí)(TffiRS OF DATA STORAGE FOR WEB APPLICATIONS AND BROWSER EXTENSIONS) "的第13/416, 377號(hào)美國非臨時(shí)性專利申請(qǐng)案的優(yōu)先權(quán)且為所述專利申請(qǐng)案 的接續(xù),所述專利申請(qǐng)案的揭示內(nèi)容在此被以引用方式全部并入。
【技術(shù)領(lǐng)域】
[0003] 本發(fā)明大體上涉及為軟件應(yīng)用程序分配存儲(chǔ),且更特定來說,涉及為網(wǎng)頁應(yīng)用程 序和瀏覽器擴(kuò)展分配數(shù)據(jù)存儲(chǔ)層級(jí)。
【背景技術(shù)】
[0004] 不同等級(jí)的數(shù)據(jù)存儲(chǔ)提供不同的益處。數(shù)據(jù)可本地或遠(yuǎn)程存儲(chǔ),且可存儲(chǔ)在暫時(shí) 性存儲(chǔ)媒體(例如,高速緩沖存儲(chǔ)器)中或存儲(chǔ)在更永久性的存儲(chǔ)媒體(例如,非易失性存 儲(chǔ)器)中。高速緩沖存儲(chǔ)器存儲(chǔ)數(shù)據(jù)使得對(duì)所述數(shù)據(jù)的未來請(qǐng)求可更快地得到服務(wù)。存儲(chǔ) 在高速緩沖存儲(chǔ)器內(nèi)的數(shù)據(jù)可包含較早前已計(jì)算的值或存儲(chǔ)在別處的原始值的副本。如果 所請(qǐng)求的數(shù)據(jù)包含在高速緩沖存儲(chǔ)器中,那么可通過簡單地讀取高速緩沖存儲(chǔ)器來為請(qǐng)求 服務(wù),這比重新計(jì)算數(shù)據(jù)或從其原始存儲(chǔ)位置取出數(shù)據(jù)更快。然而,為具有成本效益且實(shí)現(xiàn) 數(shù)據(jù)的高效率使用,高速緩沖存儲(chǔ)器相對(duì)小。
[0005] 將數(shù)據(jù)存儲(chǔ)在永久性位置中也提供各種益處。例如,非易失性存儲(chǔ)器甚至可在計(jì) 算機(jī)未被供電時(shí)保留信息。此外,單個(gè)用戶可在使用不同計(jì)算裝置時(shí)存取存儲(chǔ)在遠(yuǎn)程永久 性位置中的相同數(shù)據(jù)。多個(gè)用戶也可存取存儲(chǔ)在遠(yuǎn)程永久性位置中的相同數(shù)據(jù)。
[0006] 網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展可存取和存儲(chǔ)不同類型的數(shù)據(jù)。通過使用網(wǎng)頁應(yīng)用程 序編程接口(API),網(wǎng)頁應(yīng)用程序或?yàn)g覽器擴(kuò)展可將數(shù)據(jù)存儲(chǔ)在計(jì)算裝置的本地磁盤中使 得在本地高速緩沖存儲(chǔ)數(shù)據(jù)。與數(shù)據(jù)被存儲(chǔ)在遠(yuǎn)程服務(wù)器處的情況相比,本地高速緩沖存 儲(chǔ)器可更快地為數(shù)據(jù)服務(wù),但在用戶升級(jí)操作系統(tǒng)或在用戶改變到另一計(jì)算機(jī)或移動(dòng)裝置 的情況下,來自網(wǎng)頁應(yīng)用程序的更新或數(shù)據(jù)未必會(huì)得到反映。因此,由網(wǎng)頁應(yīng)用程序和瀏覽 器擴(kuò)展使用的不同等級(jí)的數(shù)據(jù)存儲(chǔ)將允許開發(fā)者使網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展的特征最 優(yōu)化,且將向用戶提供許多益處。
【發(fā)明內(nèi)容】
[0007] 根據(jù)一個(gè)一般方面,一種用于為網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展的特征提供數(shù)據(jù)存儲(chǔ) 的方法在可操作地耦合到一或多個(gè)存儲(chǔ)器裝置的一或多個(gè)處理器上執(zhí)行。提供對(duì)遠(yuǎn)程服務(wù) 器處的第一層級(jí)的有限永久性存儲(chǔ)的存取,其中跨與用戶賬戶相關(guān)聯(lián)的多個(gè)裝置使來自所 述第一層級(jí)的第一組數(shù)據(jù)同步化。提供對(duì)本地、有形非易失性存儲(chǔ)媒體上的第二層級(jí)的永 久性存儲(chǔ)的存取。提供對(duì)本地、有形易失性存儲(chǔ)媒體上的第三層級(jí)暫時(shí)性存儲(chǔ)的存取。從網(wǎng) 頁應(yīng)用程序或?yàn)g覽器擴(kuò)展接收存儲(chǔ)請(qǐng)求,所述存儲(chǔ)請(qǐng)求包含與網(wǎng)頁應(yīng)用程序或?yàn)g覽器擴(kuò)展 的至少一個(gè)特征相關(guān)聯(lián)的至少一個(gè)數(shù)據(jù)存儲(chǔ)層級(jí)的類型,所述類型包含第一層級(jí)的遠(yuǎn)程有 限永久性存儲(chǔ)、第二層級(jí)的本地永久性存儲(chǔ)或第三層級(jí)的本地暫時(shí)性存儲(chǔ)中的至少一者。 網(wǎng)頁應(yīng)用程序或?yàn)g覽器擴(kuò)展的至少一個(gè)特征與至少一個(gè)數(shù)據(jù)存儲(chǔ)層級(jí)相關(guān)聯(lián)。
[0008] 根據(jù)另一一般方面,一種用于為網(wǎng)頁應(yīng)用程序的特征分配數(shù)據(jù)的方法在可操作地 耦合到計(jì)算裝置的一或多個(gè)存儲(chǔ)器裝置的一或多個(gè)處理器上執(zhí)行。網(wǎng)頁應(yīng)用程序的特征在 所述計(jì)算裝置上執(zhí)行。基于所述特征自動(dòng)確定一組指定數(shù)據(jù)存儲(chǔ)層級(jí)的至少一個(gè)層級(jí)。將 對(duì)與所述特征相關(guān)聯(lián)的一組數(shù)據(jù)的存儲(chǔ)請(qǐng)求發(fā)送到一組指定數(shù)據(jù)存儲(chǔ)層級(jí)中的至少一個(gè) 層級(jí),所述組指定數(shù)據(jù)存儲(chǔ)層級(jí)包含:遠(yuǎn)程服務(wù)器處的第一層級(jí)的有限永久性存儲(chǔ),其中來 自所述第一層級(jí)的第一組數(shù)據(jù)跨與用戶賬戶相關(guān)聯(lián)的多個(gè)裝置同步化;所述計(jì)算裝置上的 本地非易失性存儲(chǔ)上的第二層級(jí)的永久性存儲(chǔ);以及所述計(jì)算裝置上的本地易失性存儲(chǔ)的 第三層級(jí)的暫時(shí)性存儲(chǔ)。
[0009] 根據(jù)另一一般方面,一種有形計(jì)算機(jī)可讀存儲(chǔ)媒體在其上記錄和存儲(chǔ)指令,所述 指令在由計(jì)算機(jī)系統(tǒng)的一或多個(gè)處理器執(zhí)行時(shí)使所述計(jì)算機(jī)系統(tǒng)在計(jì)算系統(tǒng)上實(shí)施網(wǎng)頁 應(yīng)用程序的特征,所述網(wǎng)頁應(yīng)用程序與用戶賬戶相關(guān)聯(lián),所述特征與一組指定數(shù)據(jù)存儲(chǔ)層 級(jí)的至少一個(gè)層級(jí)相關(guān)聯(lián)。所述計(jì)算機(jī)系統(tǒng)可將對(duì)與所述特征相關(guān)的一組數(shù)據(jù)的存儲(chǔ)請(qǐng)求 發(fā)送到所述組指定數(shù)據(jù)存儲(chǔ)層級(jí)中的至少一個(gè)層級(jí),所述組指定數(shù)據(jù)存儲(chǔ)層級(jí)包含:遠(yuǎn)程 服務(wù)器處的第一層級(jí)的有限永久性存儲(chǔ),其中來自所述第一層級(jí)的第一組數(shù)據(jù)跨與用戶賬 戶相關(guān)聯(lián)的多個(gè)裝置同步化;所述計(jì)算系統(tǒng)上的本地非易失性存儲(chǔ)上的第二層級(jí)的永久性 存儲(chǔ);以及所述計(jì)算系統(tǒng)上的本地易失性存儲(chǔ)的第三層級(jí)的暫時(shí)性存儲(chǔ)。
[0010] 根據(jù)又一一般方面,一種為網(wǎng)頁應(yīng)用程序的特征提供數(shù)據(jù)存儲(chǔ)的系統(tǒng)包含遠(yuǎn)程服 務(wù)器,所述遠(yuǎn)程服務(wù)器包含第一層級(jí)的有限永久性存儲(chǔ),其中來自所述第一層級(jí)的第一組 數(shù)據(jù)跨與用戶賬戶相關(guān)聯(lián)的多個(gè)裝置同步化。所述系統(tǒng)包含客戶端裝置,所述客戶端裝置 包含經(jīng)配置以存儲(chǔ)可執(zhí)行代碼的存儲(chǔ)器,所述存儲(chǔ)器包含本地非易失性存儲(chǔ)上的第二層級(jí) 的永久性存儲(chǔ)和本地易失性存儲(chǔ)上的第三層級(jí)的暫時(shí)性存儲(chǔ)。所述客戶端裝置還包含可操 作地耦合到所述存儲(chǔ)器的處理器,所述處理器經(jīng)配置以執(zhí)行代碼使得所述客戶端裝置從與 用戶賬戶相關(guān)聯(lián)的網(wǎng)頁應(yīng)用程序接收存儲(chǔ)請(qǐng)求,所述存儲(chǔ)請(qǐng)求包含與所述網(wǎng)頁應(yīng)用程序的 至少一個(gè)特征相關(guān)的至少一個(gè)數(shù)據(jù)存儲(chǔ)層級(jí)的類型,所述類型包含第一層級(jí)的遠(yuǎn)程有限永 久性存儲(chǔ)、第二層級(jí)的本地永久性存儲(chǔ)或第三層級(jí)的本地暫時(shí)性存儲(chǔ)中的至少一者。所述 客戶端裝置使網(wǎng)頁應(yīng)用程序或?yàn)g覽器擴(kuò)展的至少一個(gè)特征與至少一個(gè)數(shù)據(jù)存儲(chǔ)層級(jí)相關(guān) 聯(lián)。
[0011] 實(shí)施方案可包含各種特征。例如,遠(yuǎn)程服務(wù)器處的第一層級(jí)的有限永久性存儲(chǔ)可 包含與用戶賬戶相關(guān)聯(lián)的一部分?jǐn)?shù)據(jù)。作為另一實(shí)例,與用戶賬戶相關(guān)聯(lián)的數(shù)據(jù)包含書簽、 偏好、密碼和主題。此外,第一組數(shù)據(jù)可基于來自實(shí)施第一網(wǎng)頁應(yīng)用程序的第一計(jì)算裝置的 請(qǐng)求而跨多個(gè)裝置同步化。在一些實(shí)施方案中,所述特征實(shí)施計(jì)算裝置的位置檢測(cè)傳感器, 且所述類型包含第二層級(jí)。所述特征可與和用戶賬戶相關(guān)聯(lián)的電子郵件賬戶相關(guān)聯(lián),且所 述類型可包含第一層級(jí)。所述特征可涉及與用戶賬戶相關(guān)聯(lián)的日歷,且所述類型可包含第 一層級(jí)。在一些實(shí)例中,所述層級(jí)可由網(wǎng)頁應(yīng)用程序的開發(fā)者指定。此外,網(wǎng)頁應(yīng)用程序可 在與用戶賬戶相關(guān)聯(lián)的第二計(jì)算裝置上實(shí)施,且可使用用戶賬戶存取第一組數(shù)據(jù)。
[0012] 在附圖和以下描述中陳述一或多個(gè)實(shí)施方案的細(xì)節(jié)。其它特征將從描述和圖式和 從權(quán)利要求書顯而易見。
【專利附圖】
【附圖說明】
[0013] 圖1為可用以為網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展提供數(shù)據(jù)存儲(chǔ)的系統(tǒng)的框圖。
[0014] 圖2為可用以為網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展的特征分配數(shù)據(jù)存儲(chǔ)的示范性系統(tǒng) 的框圖。
[0015] 圖3為可用以為網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展的特征提供數(shù)據(jù)存儲(chǔ)的客戶端裝置 的框圖。
[0016] 圖4為用于提供數(shù)據(jù)存儲(chǔ)的過程的流程圖。
[0017] 圖5說明可用以實(shí)施本文中描述的技術(shù)的計(jì)算裝置和移動(dòng)計(jì)算裝置的實(shí)例。
[0018] 各種圖式中的相同參考符號(hào)指示相同元件。
【具體實(shí)施方式】
[0019] 由客戶端裝置執(zhí)行的網(wǎng)頁瀏覽器可從遠(yuǎn)程服務(wù)器(例如,托管網(wǎng)站的遠(yuǎn)程服務(wù) 器)接收代碼(例如,HTML代碼),且可為了客戶端裝置的用戶的利益而在客戶端裝置上執(zhí) 行接收代碼。
[0020] 在各種實(shí)施例中,網(wǎng)頁瀏覽器可包含一或多個(gè)網(wǎng)頁應(yīng)用程序或可與一或多個(gè)網(wǎng)頁 應(yīng)用程序相關(guān)聯(lián)。在此上下文中,"網(wǎng)頁應(yīng)用程序"可針對(duì)用戶配置為單任務(wù)或多任務(wù)。在 此實(shí)施例中,網(wǎng)頁應(yīng)用程序可經(jīng)配置以由網(wǎng)頁瀏覽器執(zhí)行或解譯。將此與包含機(jī)器可執(zhí)行 代碼且可經(jīng)配置以直接由處理器執(zhí)行或經(jīng)由客戶端裝置的操作系統(tǒng)執(zhí)行的本地應(yīng)用程序 比較,然而,網(wǎng)頁應(yīng)用程序在沒有網(wǎng)頁瀏覽器協(xié)助的情況下可能無法執(zhí)行或顯示。因此,網(wǎng) 頁應(yīng)用程序可在具有專用用戶接口的瀏覽器內(nèi)運(yùn)行,且通常提供比獨(dú)立網(wǎng)站更豐富且更具 交互性但比桌面應(yīng)用程序更簡單且更具整體性的功能性和體驗(yàn)。網(wǎng)頁應(yīng)用程序的實(shí)例包含 在瀏覽器內(nèi)運(yùn)行的游戲、照片編輯器和視頻播放器。
[0021] 網(wǎng)頁應(yīng)用程序可為"托管式應(yīng)用程序"或"封裝式應(yīng)用程序"。托管式應(yīng)用程序可包 含自身包含網(wǎng)頁的網(wǎng)站的至少一部分加上一些元數(shù)據(jù)(其可尤其與網(wǎng)頁應(yīng)用程序相關(guān)或 與網(wǎng)頁應(yīng)用程序的用戶相關(guān)以允許網(wǎng)頁應(yīng)用程序?yàn)橛脩魣?zhí)行某種特定功能性)。封裝式應(yīng) 用程序可被認(rèn)為是其代碼經(jīng)捆綁的網(wǎng)頁應(yīng)用程序,使得用戶可下載網(wǎng)頁應(yīng)用程序的所有內(nèi) 容以供瀏覽器執(zhí)行。封裝式網(wǎng)頁應(yīng)用程序可不需要具有網(wǎng)絡(luò)接入來為用戶執(zhí)行其功能性, 而可在不接入網(wǎng)絡(luò)的情況下由瀏覽器在計(jì)算裝置上本地成功執(zhí)行。封裝式網(wǎng)頁應(yīng)用程序具 有使用擴(kuò)展API的選項(xiàng),從而允許封裝式應(yīng)用程序改變?yōu)g覽器表現(xiàn)或查看的方式。
[0022] 在各種實(shí)施例中,網(wǎng)頁瀏覽器可包含一或多個(gè)瀏覽器擴(kuò)展或可經(jīng)配置以與一或多 個(gè)瀏覽器擴(kuò)展交互。在此上下文中,"瀏覽器擴(kuò)展"可包含一或多個(gè)網(wǎng)頁,其一起封裝或分 群為可定義整體,且經(jīng)配置以將功能性擴(kuò)展到網(wǎng)頁瀏覽器。因此,擴(kuò)展還向?yàn)g覽器提供額外 功能性,但一般來說,不同于網(wǎng)頁應(yīng)用程序,存在極少或不存在針對(duì)由瀏覽器擴(kuò)展提供的功 能性的用戶接口組件。而是,瀏覽器擴(kuò)展使瀏覽器的功能性和在瀏覽器中查看的網(wǎng)站擴(kuò)展。 例如,瀏覽器擴(kuò)展可通過將新按鈕(例如,始終存在的貨幣轉(zhuǎn)換器)添加到地址欄來擴(kuò)展瀏 覽器的功能性。像這樣的按鈕還可應(yīng)用到被查看的當(dāng)前網(wǎng)站一例如,點(diǎn)擊貨幣轉(zhuǎn)換按鈕可 將向用戶呈現(xiàn)的網(wǎng)站上的所有價(jià)格轉(zhuǎn)換成用戶所選擇的貨幣。在另一實(shí)例中,擴(kuò)展可經(jīng)安 裝使得當(dāng)用戶將游標(biāo)懸停在由瀏覽器執(zhí)行的網(wǎng)頁上的縮略圖像上時(shí),顯示所述圖像的較大 尺寸版本,直到用戶將游標(biāo)從所述圖像移開為止。在另一實(shí)例中,擴(kuò)展可經(jīng)安裝以將"用郵 件發(fā)送此"按鈕嵌入在每一頁面中的每一鏈接旁邊。與網(wǎng)頁應(yīng)用程序相比,擴(kuò)展穿越網(wǎng)站和 網(wǎng)頁應(yīng)用程序。擴(kuò)展可實(shí)際上跨所有網(wǎng)站(盡管有些是站點(diǎn)專用的)。網(wǎng)頁應(yīng)用程序可不 以此方式與其它應(yīng)用程序組合。實(shí)情是,網(wǎng)頁應(yīng)用程序像任何常規(guī)網(wǎng)站一樣大體上獨(dú)立運(yùn) 行。
[0023] 用戶賬戶允許用戶向系統(tǒng)服務(wù)(例如,網(wǎng)頁應(yīng)用程序)驗(yàn)證并接收授權(quán)以存取所 述系統(tǒng)服務(wù)。為登錄到用戶賬戶,用戶可使用密碼或其它憑證驗(yàn)證自身以達(dá)到(例如)記 帳、安全性和資源管理的目的。系統(tǒng)可核對(duì)并證實(shí)用戶賬戶的適當(dāng)所有權(quán),且可通過將唯一 識(shí)別符指派給經(jīng)證實(shí)的賬戶登錄識(shí)別符(例如,用戶名和密碼、安全識(shí)別符等等)來將那些 用戶賬戶的所有權(quán)永久性地鏈接到特定個(gè)人。所述系統(tǒng)可證實(shí),(例如)根據(jù)組織經(jīng)營政 策、訪問控制政策和各種應(yīng)用要求,個(gè)別人僅具有用于適當(dāng)系統(tǒng)和應(yīng)用程序的賬戶登錄識(shí) 別符。
[0024] 用戶可將書簽、擴(kuò)展、網(wǎng)頁應(yīng)用程序、主題和瀏覽器偏好保存到用戶賬戶使得無論 個(gè)人使用何計(jì)算機(jī),它們均可用。那樣,用戶可在每一個(gè)地方具有相同的網(wǎng)頁體驗(yàn)。設(shè)置可 保存在用戶賬戶中,且當(dāng)用戶從另一計(jì)算機(jī)登錄到用戶賬戶中時(shí),改變可被瞬時(shí)同步到另 一計(jì)算機(jī)。
[0025] 由用戶提供或同步到另一計(jì)算機(jī)的任何信息(例如,設(shè)置、網(wǎng)頁應(yīng)用程序、瀏覽器 擴(kuò)展、個(gè)人數(shù)據(jù)等等)可基于選擇加入而提供。換句話說,僅當(dāng)用戶特定授權(quán)此信息的傳輸 時(shí),此信息才可從服務(wù)器或計(jì)算裝置提供或提供到服務(wù)器或計(jì)算裝置。此外,可在發(fā)送數(shù)據(jù) 之前以一或多種方式使數(shù)據(jù)匿名,使得個(gè)人可識(shí)別信息被移除。
[0026] 圖1為可用以為網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展提供數(shù)據(jù)存儲(chǔ)的系統(tǒng)的框圖。系統(tǒng) 100可包含客戶端110A和110B、開發(fā)器130A和130B及服務(wù)器140,其可通過網(wǎng)絡(luò)120互 連。
[0027] 客戶端110A和110B可為可執(zhí)行網(wǎng)頁瀏覽器、下載和執(zhí)行軟件應(yīng)用程序且與服務(wù) 器140通信的計(jì)算機(jī)或類似裝置。網(wǎng)絡(luò)120可為單個(gè)網(wǎng)絡(luò)或任何類型的計(jì)算機(jī)網(wǎng)絡(luò)的組 合,例如,局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)。此外,網(wǎng)絡(luò)120可為公用(例如,因特網(wǎng))與專用 網(wǎng)絡(luò)的組合。開發(fā)器130A和130B為由應(yīng)用程序、網(wǎng)頁應(yīng)用程序、瀏覽器擴(kuò)展等等的軟件開 發(fā)者存取的客戶端計(jì)算機(jī)。服務(wù)器140為與客戶端110A和110B以及開發(fā)器130A和130B 通信的計(jì)算機(jī)或類似裝置。
[0028] 在圖1中展示的布置中,網(wǎng)頁瀏覽器可用以通過與服務(wù)器140交互來請(qǐng)求安裝網(wǎng) 頁應(yīng)用程序和瀏覽器擴(kuò)展。例如,同步服務(wù)器140或另一服務(wù)器可實(shí)施用以在各內(nèi)容中分 布網(wǎng)頁應(yīng)用程序的網(wǎng)站(例如,電子商務(wù)網(wǎng)站)。例如,所述服務(wù)器可從開發(fā)器130A和130B 獲取網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展。
[0029] 安裝網(wǎng)頁應(yīng)用程序的請(qǐng)求可包含在從計(jì)算裝置110A和110B到服務(wù)器140的消息 中,所述請(qǐng)求指示購買相應(yīng)網(wǎng)頁應(yīng)用程序的協(xié)定。在其它實(shí)施方案中,服務(wù)器140可呈其它 形式或?qū)嵤┢渌夹g(shù)(例如,提供對(duì)免費(fèi)網(wǎng)頁應(yīng)用程序的存?。?,或可呈開發(fā)者的網(wǎng)站的形 式(其提供對(duì)網(wǎng)頁應(yīng)用安裝程序/封裝)的存取。
[0030] 在安裝網(wǎng)頁應(yīng)用程序時(shí)執(zhí)行的特定動(dòng)作可取決于特定應(yīng)用程序和/或特定網(wǎng)頁 應(yīng)用程序而變化。在實(shí)例實(shí)施方案中,安裝網(wǎng)頁應(yīng)用程序可包含安裝對(duì)應(yīng)于網(wǎng)頁瀏覽器應(yīng) 用程序的應(yīng)用程序啟動(dòng)器區(qū)域中的網(wǎng)頁應(yīng)用程序的圖標(biāo)。接著,用戶可與此圖標(biāo)交互以啟 動(dòng)所述網(wǎng)頁應(yīng)用程序。在另一實(shí)例實(shí)施方案中,例如,安裝網(wǎng)頁應(yīng)用程序可包含跨用戶(例 如,使用相同登錄憑證)在不同時(shí)間從不同位置存取的多個(gè)計(jì)算裝置(例如,移動(dòng)電話、智 能電話、平板計(jì)算機(jī)、膝上型計(jì)算機(jī)、桌上型計(jì)算機(jī))而使網(wǎng)頁應(yīng)用程序同步。
[0031] 在其它實(shí)施方案中,安裝網(wǎng)頁應(yīng)用程序可包含開始網(wǎng)頁應(yīng)用程序的后臺(tái)頁面(如 果網(wǎng)頁應(yīng)用程序包含后臺(tái)頁面特征)。網(wǎng)頁應(yīng)用程序的后臺(tái)頁面可使網(wǎng)頁應(yīng)用程序能夠在 用戶一登錄到其計(jì)算機(jī)中(包含在用戶啟動(dòng)網(wǎng)頁瀏覽器應(yīng)用程序或啟動(dòng)網(wǎng)頁瀏覽器應(yīng)用 程序中的相關(guān)聯(lián)網(wǎng)頁應(yīng)用程序之前)就運(yùn)行。后臺(tái)頁面可為在瀏覽器應(yīng)用程序中運(yùn)行的不 可見元素,其中后臺(tái)頁面在網(wǎng)頁瀏覽器應(yīng)用程序中包含與經(jīng)安裝網(wǎng)頁應(yīng)用程序的聲明的關(guān) 聯(lián)性。
[0032] 將了解,任何數(shù)目個(gè)額外服務(wù)器、客戶端計(jì)算裝置或網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展 的開發(fā)器可包含在系統(tǒng)1〇〇中。
[0033] 可跨不同計(jì)算裝置使用于經(jīng)安裝網(wǎng)頁應(yīng)用程序的特征和數(shù)據(jù)同步,且還可使用于 計(jì)算裝置的本地?cái)?shù)據(jù)(例如,位置數(shù)據(jù))同步。開發(fā)者可將不同的數(shù)據(jù)存儲(chǔ)層級(jí)指派給網(wǎng)頁 應(yīng)用程序和瀏覽器擴(kuò)展的不同特征。圖2為可用以為網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展的特征分 配數(shù)據(jù)存儲(chǔ)的示范性系統(tǒng)的框圖。如圖2中所展示,客戶端110A和110B包含永久性本地 存儲(chǔ)裝置210A和210B和暫時(shí)性本地存儲(chǔ)裝置215A和215B??蛻舳?10A或110B上的網(wǎng) 頁瀏覽器可提供對(duì)永久性本地存儲(chǔ)裝置210A和210B或暫時(shí)性本地存儲(chǔ)裝置215A和215B 的存取且可與永久性本地存儲(chǔ)裝置210A和210B或暫時(shí)性本地存儲(chǔ)裝置215A和215B通信 (例如,使用HTML 5網(wǎng)頁存儲(chǔ))。下文關(guān)于圖3更詳細(xì)論述永久性和暫時(shí)性本地存儲(chǔ)裝置 的實(shí)例。
[0034] 服務(wù)器140可使用用戶識(shí)別符或其它登錄憑證使用戶賬戶在網(wǎng)絡(luò)120上同步化。 作為實(shí)例,單個(gè)用戶可(例如)使用網(wǎng)頁瀏覽器從客戶端計(jì)算裝置110A存取網(wǎng)頁應(yīng)用程序 (例如,應(yīng)用程序230A或230B中的一者),且在另一時(shí)間可從客戶端計(jì)算裝置110B存取相 同的應(yīng)用程序。服務(wù)器140可證實(shí)用戶的登錄憑證(例如,經(jīng)由用戶瀏覽器)以允許用戶 從不同計(jì)算裝置存取應(yīng)用程序(例如,托管式網(wǎng)頁應(yīng)用程序)。
[0035] 當(dāng)已安裝封裝式網(wǎng)頁應(yīng)用程序時(shí),計(jì)算裝置110可本地存儲(chǔ)裝置與所述封裝式網(wǎng) 頁應(yīng)用程序相關(guān)的一些數(shù)據(jù)(例如,存儲(chǔ)在永久性本地存儲(chǔ)裝置210A或暫時(shí)性本地存儲(chǔ)裝 置215A中)。服務(wù)器140也可存儲(chǔ)與封裝式網(wǎng)頁應(yīng)用程序相關(guān)的一些數(shù)據(jù)(例如,存儲(chǔ)在 數(shù)據(jù)庫240中)。在一些實(shí)施方案中,服務(wù)器140可確保來自計(jì)算裝置110A的本地?cái)?shù)據(jù)跨 所有用戶裝置或用以使用戶登錄到用戶賬戶的所有裝置(例如,客戶端計(jì)算裝置110B)而 同步。此外,密碼可在本地存儲(chǔ),但可使用服務(wù)器140而跨多個(gè)裝置同步。此外,同步服務(wù) 器可針對(duì)用戶跨不同裝置使任何或所有經(jīng)安裝網(wǎng)頁應(yīng)用程序、瀏覽器擴(kuò)展、瀏覽器書簽、設(shè) 置、配置文件、瀏覽器歷史、主題、插件、本地權(quán)限、安全性特征和與用戶的網(wǎng)頁應(yīng)用程序和 瀏覽器擴(kuò)展相關(guān)聯(lián)的數(shù)據(jù)同步。例如,如果計(jì)算裝置110A的用戶從計(jì)算裝置110B存取用 戶賬戶(例如,經(jīng)由網(wǎng)頁瀏覽器),那么服務(wù)器140可將與網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展相關(guān) 聯(lián)的設(shè)置和數(shù)據(jù)(例如,用戶已選擇進(jìn)行同步的設(shè)置和數(shù)據(jù))從用戶賬戶復(fù)制到計(jì)算裝置 110B。對(duì)一個(gè)計(jì)算裝置上的設(shè)置的改變可從其它計(jì)算機(jī)自動(dòng)復(fù)制(例如,經(jīng)由服務(wù)器140) (例如,如果用戶已啟用所述同步特征)。當(dāng)經(jīng)同步數(shù)據(jù)在計(jì)算裝置110A、110B與服務(wù)器140 之間行進(jìn)時(shí)可加密所述經(jīng)同步數(shù)據(jù)以保持信息安全。此外,可使用密鑰在計(jì)算裝置110A、 110B和服務(wù)器140上加密密碼。
[0036] 網(wǎng)頁應(yīng)用程序的某些特征可存儲(chǔ)在不同位置或數(shù)據(jù)存儲(chǔ)層級(jí)中。數(shù)據(jù)存儲(chǔ)層級(jí)可 允許更有效率的處理,且可允許用戶僅使所述用戶或開發(fā)者允許同步的那些特征或數(shù)據(jù)同 步。作為實(shí)例,網(wǎng)頁應(yīng)用程序可在桌上型計(jì)算機(jī)上將用戶的位置本地存儲(chǔ)在永久性本地存 儲(chǔ)器中,使得每當(dāng)用戶在桌上型計(jì)算機(jī)上運(yùn)行天氣相關(guān)網(wǎng)頁應(yīng)用程序時(shí),網(wǎng)頁應(yīng)用程序無 須更新用戶的位置。然而,如果用戶從另一裝置(例如,智能電話)運(yùn)行相同的天氣相關(guān)網(wǎng) 頁應(yīng)用程序,那么所述天氣相關(guān)網(wǎng)頁應(yīng)用程序可能需要更新位置數(shù)據(jù)以反映用戶位置的改 變(例如,如果用戶駕車去另一城市)。在所述實(shí)例中,天氣相關(guān)網(wǎng)頁應(yīng)用程序可將(潛在 不同)的位置數(shù)據(jù)存儲(chǔ)在每一裝置上的永久性本地存儲(chǔ)媒體上。
[0037] 作為另一實(shí)例,用戶可能希望她的電子郵件消息和日歷可從她使用的任何計(jì)算裝 置存取。在此實(shí)例中,利用用戶的電子郵件和日歷數(shù)據(jù)的網(wǎng)頁應(yīng)用程序可本地存儲(chǔ)和存儲(chǔ) 在遠(yuǎn)程服務(wù)器處。開發(fā)者可指定網(wǎng)頁應(yīng)用程序或?yàn)g覽器擴(kuò)展的某些特征的數(shù)據(jù)存儲(chǔ)在何 處,且可使用各種數(shù)據(jù)存儲(chǔ)層級(jí)。
[0038] 開發(fā)器130A和130B可創(chuàng)建軟件應(yīng)用程序230A和230B,其可為(例如)網(wǎng)頁應(yīng)用 程序或?yàn)g覽器擴(kuò)展。應(yīng)用程序230A和230B可存儲(chǔ)在開發(fā)器計(jì)算裝置130AU30B上,且還 可存儲(chǔ)在服務(wù)器140處和/或安裝在客戶端110A和110B處。
[0039] 在一些實(shí)施方案中,如果用戶已安裝網(wǎng)頁應(yīng)用程序230A,那么在客戶端裝置110A 或110B上執(zhí)行的網(wǎng)頁瀏覽器可提供對(duì)數(shù)據(jù)存儲(chǔ)層級(jí)的存取,且可(例如)在網(wǎng)頁應(yīng)用程序 230A經(jīng)安裝或啟動(dòng)時(shí)從所述網(wǎng)頁應(yīng)用程序接收存儲(chǔ)請(qǐng)求。所述存儲(chǔ)請(qǐng)求可包含指定與網(wǎng)頁 應(yīng)用程序或?yàn)g覽器擴(kuò)展的至少一個(gè)特征(例如,下文更詳細(xì)論述的特征231、232、233中的 一者)相關(guān)的至少一個(gè)數(shù)據(jù)存儲(chǔ)層級(jí)的類型。例如,所述類型可指定永久性本地存儲(chǔ)裝置 210A、暫時(shí)性本地存儲(chǔ)裝置215A或遠(yuǎn)程服務(wù)器數(shù)據(jù)庫240。網(wǎng)頁瀏覽器可使應(yīng)用程序的至 少一個(gè)特征與數(shù)據(jù)存儲(chǔ)層級(jí)中的至少一者相關(guān)聯(lián)。下文在表格1中說明展示數(shù)據(jù)層級(jí)的實(shí) 例的表。
[0040] 表 1
[0041]
【權(quán)利要求】
1. 一種用于為網(wǎng)頁應(yīng)用程序和瀏覽器擴(kuò)展的特征提供數(shù)據(jù)存儲(chǔ)的方法,其在可操作地 耦合到一或多個(gè)存儲(chǔ)器裝置的一或多個(gè)處理器上執(zhí)行,所述方法包括: 提供對(duì)遠(yuǎn)程服務(wù)器處的第一層級(jí)的有限永久性存儲(chǔ)的存取,其中跨與用戶賬戶相關(guān)聯(lián) 的多個(gè)裝置使來自所述第一層級(jí)的第一組數(shù)據(jù)同步化; 提供對(duì)本地、有形非易失性存儲(chǔ)媒體上的第二層級(jí)的永久性存儲(chǔ)的存?。? 提供對(duì)本地、有形易失性存儲(chǔ)媒體上的第三層級(jí)的暫時(shí)性存儲(chǔ)的存取; 從網(wǎng)頁應(yīng)用程序或?yàn)g覽器擴(kuò)展接收存儲(chǔ)請(qǐng)求,所述存儲(chǔ)請(qǐng)求包含與所述網(wǎng)頁應(yīng)用程序 或?yàn)g覽器擴(kuò)展的至少一個(gè)特征相關(guān)聯(lián)的至少一個(gè)數(shù)據(jù)存儲(chǔ)層級(jí)的類型,所述類型包含所述 第一層級(jí)的遠(yuǎn)程有限永久性存儲(chǔ)、所述第二層級(jí)的本地永久性存儲(chǔ)或所述第三層級(jí)的本地 暫時(shí)性存儲(chǔ)中的至少一者;以及 使所述網(wǎng)頁應(yīng)用程序或?yàn)g覽器擴(kuò)展的所述至少一個(gè)特征與所述至少一個(gè)數(shù)據(jù)存儲(chǔ)層 級(jí)相關(guān)聯(lián)。
2. 根據(jù)權(quán)利要求1所述的方法,其中所述遠(yuǎn)程服務(wù)器處的所述第一層級(jí)的有限永久性 存儲(chǔ)包含與所述用戶賬戶相關(guān)聯(lián)的一部分?jǐn)?shù)據(jù)。
3. 根據(jù)權(quán)利要求2所述的方法,其中與所述用戶賬戶相關(guān)聯(lián)的所述數(shù)據(jù)包含書簽、偏 好、密碼和主題。
4. 根據(jù)前述權(quán)利要求中任一權(quán)利要求所述的方法,其中基于來自實(shí)施第一網(wǎng)頁應(yīng)用程 序的第一計(jì)算裝置的請(qǐng)求而跨多個(gè)裝置使所述第一組數(shù)據(jù)同步化。
5. 根據(jù)前述權(quán)利要求中任一權(quán)利要求所述的方法,其中所述特征實(shí)施計(jì)算裝置的位置 檢測(cè)傳感器,且其中所述類型包含所述第二層級(jí)。
6. 根據(jù)前述權(quán)利要求中任一權(quán)利要求所述的方法,其中所述特征與和所述用戶賬戶相 關(guān)聯(lián)的電子郵件賬戶相關(guān)聯(lián),且其中所述類型包含所述第一層級(jí)。
7. 根據(jù)前述權(quán)利要求中任一權(quán)利要求所述的方法,其中所述特征和與所述用戶賬戶相 關(guān)聯(lián)的日歷相關(guān),且其中所述類型包含所述第一層級(jí)。
8. -種用于為網(wǎng)頁應(yīng)用程序的特征分配數(shù)據(jù)的方法,其在可操作地耦合到計(jì)算裝置的 一或多個(gè)存儲(chǔ)器裝置的一或多個(gè)處理器上執(zhí)行,所述方法包括: 在所述計(jì)算裝置上執(zhí)行網(wǎng)頁應(yīng)用程序的特征; 基于所述特征自動(dòng)確定一組指定數(shù)據(jù)存儲(chǔ)層級(jí)中的至少一個(gè)層級(jí); 以及 將對(duì)與所述特征相關(guān)聯(lián)的一組數(shù)據(jù)的存儲(chǔ)請(qǐng)求發(fā)送到一組指定數(shù)據(jù)存儲(chǔ)層級(jí)中的至 少一個(gè)層級(jí),所述組指定數(shù)據(jù)存儲(chǔ)層級(jí)包含: 遠(yuǎn)程服務(wù)器處的第一層級(jí)的有限永久性存儲(chǔ),其中跨與用戶賬戶相關(guān)聯(lián)的多個(gè)裝置使 來自所述第一層級(jí)的第一組數(shù)據(jù)同步化, 所述計(jì)算裝置上的本地非易失性存儲(chǔ)上的第二層級(jí)的永久性存儲(chǔ),以及 所述計(jì)算裝置上的本地易失性存儲(chǔ)的第三層級(jí)的暫時(shí)性存儲(chǔ)。
9. 根據(jù)權(quán)利要求8所述的方法,其中所述特征與所述計(jì)算裝置的位置檢測(cè)傳感器相 關(guān),且所述至少一個(gè)層級(jí)為所述第三層級(jí)。
10. 根據(jù)權(quán)利要求8或權(quán)利要求9所述的方法,其中所述至少一個(gè)層級(jí)由所述網(wǎng)頁應(yīng)用 程序的開發(fā)者指定。
11. 根據(jù)權(quán)利要求8、權(quán)利要求9或權(quán)利要求10所述的方法,其進(jìn)一步包括: 在與所述用戶賬戶相關(guān)聯(lián)的第二計(jì)算裝置上實(shí)施所述網(wǎng)頁應(yīng)用程序;以及 使用所述用戶賬戶存取所述第一組數(shù)據(jù)。
12. -種有形計(jì)算機(jī)可讀存儲(chǔ)媒體,其在其上記錄和存儲(chǔ)指令,所述指令在由計(jì)算機(jī)系 統(tǒng)的一或多個(gè)處理器執(zhí)行時(shí)使所述計(jì)算機(jī)系統(tǒng): 在所述計(jì)算系統(tǒng)上實(shí)施網(wǎng)頁應(yīng)用程序的特征,所述網(wǎng)頁應(yīng)用程序與用戶賬戶相關(guān)聯(lián), 所述特征與一組指定數(shù)據(jù)存儲(chǔ)層級(jí)中的至少一個(gè)層級(jí)相關(guān)聯(lián);以及 將對(duì)與所述特征相關(guān)的一組數(shù)據(jù)的存儲(chǔ)請(qǐng)求發(fā)送到所述組指定數(shù)據(jù)存儲(chǔ)層級(jí)中的至 少一個(gè)層級(jí),所述組指定數(shù)據(jù)存儲(chǔ)層級(jí)包含: 遠(yuǎn)程服務(wù)器處的第一層級(jí)的有限永久性存儲(chǔ),其中來自所述第一層級(jí)的第一組數(shù)據(jù)跨 與所述用戶賬戶相關(guān)聯(lián)的多個(gè)裝置同步化, 所述計(jì)算系統(tǒng)上的本地非易失性存儲(chǔ)上的第二層級(jí)的永久性存儲(chǔ),以及 所述計(jì)算系統(tǒng)上的本地易失性存儲(chǔ)的第三層級(jí)的暫時(shí)性存儲(chǔ)。
13. 根據(jù)權(quán)利要求12所述的有形計(jì)算機(jī)可讀存儲(chǔ)媒體,其中基于所述特征自動(dòng)確定所 述至少一個(gè)層級(jí)。
14. 根據(jù)權(quán)利要求12或權(quán)利要求13所述的有形計(jì)算機(jī)可讀存儲(chǔ)媒體,其中所述特征與 所述計(jì)算裝置的位置檢測(cè)傳感器相關(guān),且所述至少一個(gè)層級(jí)為所述第三層級(jí)。
15. 根據(jù)權(quán)利要求12、權(quán)利要求13或權(quán)利要求14所述的有形計(jì)算機(jī)可讀存儲(chǔ)媒體,其 中所述至少一個(gè)層級(jí)由所述網(wǎng)頁應(yīng)用程序的開發(fā)者指定。
16. 根據(jù)權(quán)利要求12、權(quán)利要求13、權(quán)利要求14或權(quán)利要求15所述的有形計(jì)算機(jī)可讀 存儲(chǔ)媒體,其中所述指令進(jìn)一步包括執(zhí)行以下操作的指令: 在與所述用戶賬戶相關(guān)聯(lián)的第二計(jì)算裝置上實(shí)施所述網(wǎng)頁應(yīng)用程序;以及 使用所述用戶賬戶存取所述第一組數(shù)據(jù)。
17. -種用以為網(wǎng)頁應(yīng)用程序的特征提供數(shù)據(jù)存儲(chǔ)的系統(tǒng),其包括: 遠(yuǎn)程服務(wù)器,其包含第一層級(jí)的有限永久性存儲(chǔ),其中跨與用戶賬戶相關(guān)聯(lián)的多個(gè)裝 置使來自所述第一層級(jí)的第一組數(shù)據(jù)同步化;以及 客戶端裝置,其包含: 存儲(chǔ)器,其經(jīng)配置以存儲(chǔ)可執(zhí)行代碼,所述存儲(chǔ)器包含本地非易失性存儲(chǔ)上的第二層 級(jí)的永久性存儲(chǔ)和本地易失性存儲(chǔ)上的第三層級(jí)的暫時(shí)性存儲(chǔ);以及 處理器,其可操作地耦合到所述存儲(chǔ)器,所述處理器經(jīng)配置以執(zhí)行代碼使得所述客戶 端裝置: 從與用戶賬戶相關(guān)聯(lián)的網(wǎng)頁應(yīng)用程序接收存儲(chǔ)請(qǐng)求,所述存儲(chǔ)請(qǐng)求包含與所述網(wǎng)頁應(yīng) 用程序的至少一個(gè)特征相關(guān)的至少一個(gè)數(shù)據(jù)存儲(chǔ)層級(jí)的類型,所述類型包含所述第一層級(jí) 的遠(yuǎn)程有限永久性存儲(chǔ)、所述第二層級(jí)的本地永久性存儲(chǔ)或所述第三層級(jí)的本地暫時(shí)性存 儲(chǔ)中的至少一者;以及 使所述網(wǎng)頁應(yīng)用程序或?yàn)g覽器擴(kuò)展的所述至少一個(gè)特征與所述至少一個(gè)數(shù)據(jù)存儲(chǔ)層 級(jí)相關(guān)聯(lián)。
18. 根據(jù)權(quán)利要求17所述的系統(tǒng),其中所述遠(yuǎn)程服務(wù)器處的所述第一層級(jí)的有限永久 性存儲(chǔ)包含與所述用戶賬戶相關(guān)聯(lián)的一部分?jǐn)?shù)據(jù)。
19. 根據(jù)權(quán)利要求18所述的系統(tǒng),其中與所述用戶賬戶相關(guān)聯(lián)的所述數(shù)據(jù)包含書簽、 偏好、密碼和主題。
20. 根據(jù)權(quán)利要求17、權(quán)利要求18或權(quán)利要求19所述的系統(tǒng),其中基于來自實(shí)施所述 網(wǎng)頁應(yīng)用程序的所述客戶端裝置的請(qǐng)求而跨多個(gè)裝置使所述第一組數(shù)據(jù)同步化。
21. 根據(jù)權(quán)利要求17、權(quán)利要求18、權(quán)利要求19或權(quán)利要求20所述的系統(tǒng),其中所述 網(wǎng)頁應(yīng)用程序的所述特征實(shí)施所述客戶端裝置的位置檢測(cè)傳感器,且其中所述類型包含所 述第二層級(jí)。
22. 根據(jù)權(quán)利要求17、權(quán)利要求18、權(quán)利要求19、權(quán)利要求20或權(quán)利要求21所述的系 統(tǒng),其中所述網(wǎng)頁應(yīng)用程序的所述特征和與所述用戶賬戶相關(guān)聯(lián)的電子郵件賬戶相關(guān),且 其中所述類型包含所述第一層級(jí)。
23. 根據(jù)權(quán)利要求17、權(quán)利要求18、權(quán)利要求19、權(quán)利要求20、權(quán)利要求21或權(quán)利要 求22所述的系統(tǒng),其中所述應(yīng)用程序的所述特征和與所述用戶賬戶相關(guān)聯(lián)的日歷相關(guān),且 其中所述類型包含所述第一層級(jí)。
【文檔編號(hào)】G06F9/50GK104395884SQ201380020783
【公開日】2015年3月4日 申請(qǐng)日期:2013年1月30日 優(yōu)先權(quán)日:2012年3月9日
【發(fā)明者】埃里克·凱, 米哈伊·珀?duì)栫昀锊? 本杰明·卡爾曼, 本·奧姆斯特德 申請(qǐng)人:谷歌公司