瀏覽器驅(qū)動(dòng)的功率節(jié)省的制作方法
【專利說明】瀏覽器驅(qū)動(dòng)的功率節(jié)省
【背景技術(shù)】
[0001 ] 本實(shí)施例整體涉及修改對(duì)網(wǎng)頁上的內(nèi)容的處理以獲得功率節(jié)省并延長電池壽命 的進(jìn)程(例如,瀏覽器應(yīng)用程序)。更具體地,本實(shí)施例涉及暫停網(wǎng)頁上的插件并且減少與 非焦點(diǎn)網(wǎng)頁相關(guān)聯(lián)的網(wǎng)頁處理。
[0002] 許多網(wǎng)頁包括一個(gè)或多個(gè)插件以呈現(xiàn)內(nèi)容。插件通常向管理功率的進(jìn)程(例如, web瀏覽器)提供附加功能,例如用于訪問某些情況在網(wǎng)頁上呈現(xiàn)的附加內(nèi)容。插件任選地 與網(wǎng)頁的主要資源相關(guān),諸如視頻網(wǎng)站的音樂視頻或新聞網(wǎng)站的視頻新聞報(bào)道,或另選地 與非中心元素諸如廣告和其他內(nèi)容相關(guān)。此外,網(wǎng)頁的主要內(nèi)容甚至已變得需要更密集的 處理。
【發(fā)明內(nèi)容】
[0003] 然而,網(wǎng)頁上出現(xiàn)更多插件需要更大的處理器利用率,繼而需要更多的功率消耗 諸如電池電力。在網(wǎng)頁上的插件與網(wǎng)頁的主要資源相關(guān)的情況下,該功率使用是必要的并 且可能與用戶在網(wǎng)頁尋找的內(nèi)容相關(guān)。對(duì)于并非是主要資源的一部分諸如廣告的插件,功 率使用常常以用戶并未尋找的內(nèi)容為代價(jià),甚至在某些情況下以分散用戶注意力的內(nèi)容為 代價(jià)。此外,即使在用戶不再主動(dòng)讀取網(wǎng)頁內(nèi)容時(shí)諸如在用戶已將瀏覽器窗口最小化時(shí)、利 用另一應(yīng)用程序來遮擋網(wǎng)頁時(shí)或?qū)⒕W(wǎng)頁移至瀏覽器的后臺(tái)標(biāo)簽時(shí),對(duì)網(wǎng)頁出現(xiàn)所進(jìn)行的大 部分處理也將繼續(xù)。這是因?yàn)樵谝恍g覽器中插件在這些規(guī)則下繼續(xù)執(zhí)行,所以導(dǎo)致持續(xù) 的電池電力消耗。由于許多用戶使用電池供電的移動(dòng)設(shè)備來訪問網(wǎng)頁內(nèi)容,所以由插件執(zhí) 行引起的電池電力的降低導(dǎo)致需要更頻繁再充電,從而引起過度能量消耗。
[0004] -些瀏覽器不提供用于識(shí)別網(wǎng)頁相對(duì)于其對(duì)用戶的有用性而造成過多電力和電 池使用的各個(gè)方面的裝置,也不提供用于減少此類功率使用的裝置以作為一種延長相關(guān)聯(lián) 的計(jì)算設(shè)備的電池壽命的方法。
[0005] -種進(jìn)程(例如,瀏覽器應(yīng)用程序)被配置為選擇性地基于瀏覽器應(yīng)用程序控件 的進(jìn)程狀態(tài)來執(zhí)行減少計(jì)算設(shè)備的功率使用的各種方法。該方法包括利用作為從視頻拍攝 的快照的靜態(tài)圖像來替換與顯示視頻相關(guān)聯(lián)的處理密集型插件活動(dòng)。根據(jù)一個(gè)實(shí)施例,進(jìn) 程(例如,瀏覽器)解析所接收的網(wǎng)頁以識(shí)別網(wǎng)頁上的一個(gè)或多個(gè)媒體插件,并且將一組規(guī) 則應(yīng)用于媒體插件以確定是否將功率節(jié)省過程應(yīng)用于這些插件中的一個(gè)或多個(gè)插件。如果 應(yīng)用功率節(jié)省過程,則從插件捕獲快照?qǐng)D像,并且選擇圖像中的一個(gè)合適的圖像來替換網(wǎng) 頁上的插件。呈現(xiàn)靜態(tài)圖像不像將執(zhí)行插件以顯示視頻那樣需要連續(xù)使用處理器,從而降 低了將以其他方式起因于插件運(yùn)行的處理功率。用戶隨后可通過點(diǎn)擊或以其他方式激活插 件來對(duì)其進(jìn)行重載。
[0006] 此外,功率節(jié)省方法包括暫?;驕p少在任何網(wǎng)頁上執(zhí)行的非媒體插件,以及對(duì)在 瀏覽器中運(yùn)行但當(dāng)前并非焦點(diǎn)的網(wǎng)頁的不可見部分的其他處理,諸如在標(biāo)簽處于不同標(biāo)簽 后的后臺(tái)中時(shí)、在瀏覽器窗口被最小化時(shí)、或者在網(wǎng)頁被另一窗口完全遮擋或部分遮擋時(shí)。 根據(jù)另一個(gè)實(shí)施例,進(jìn)程確定網(wǎng)頁在瀏覽器內(nèi)打開,以及打開網(wǎng)頁的內(nèi)容是否可見(相對(duì) 于被遮擋、最小化、在后臺(tái)標(biāo)簽中或以其他方式不可見),并且暫?;驕p少與具有不可見內(nèi) 容的網(wǎng)頁相關(guān)聯(lián)的更新。進(jìn)程與用于網(wǎng)頁內(nèi)容的定時(shí)器一起工作以降低處理功率從而節(jié)省 電池/功率,并且還與已由用于瀏覽器進(jìn)程的操作系統(tǒng)實(shí)施的任何功率使用減少相協(xié)調(diào)。
[0007] 說明書中述的特征和優(yōu)勢(shì)并非全面的,并且具體地,鑒于附圖、說明書和權(quán)利要 求,許多附加特征和優(yōu)勢(shì)對(duì)本領(lǐng)域的普通技術(shù)人員來說將是顯而易見的。此外,應(yīng)當(dāng)指出的 是,本說明書所使用的語言主要針對(duì)便于讀取和教學(xué)目的進(jìn)行選擇,而非為了限定本發(fā)明 的主題進(jìn)行選擇。
【附圖說明】
[0008] 圖1為根據(jù)一個(gè)實(shí)施例的用于經(jīng)由瀏覽器或進(jìn)程來調(diào)用功率節(jié)省過程的計(jì)算環(huán) 境的高級(jí)框圖。
[0009] 圖2為示出了根據(jù)一個(gè)實(shí)施例的用于充當(dāng)計(jì)算設(shè)備和/或云服務(wù)器的典型計(jì)算機(jī) 的高級(jí)框圖。
[0010] 圖3為示出了根據(jù)一個(gè)實(shí)施例的用于在瀏覽器或進(jìn)程內(nèi)節(jié)省功率的方法的流程 圖。
[0011] 圖4顯示了根據(jù)一個(gè)實(shí)施例的用于顯示CNN網(wǎng)頁的瀏覽器的示例性圖形用戶界面 〇;UI)〇
[0012] 圖5A和5B顯示了根據(jù)一個(gè)實(shí)施例的⑶I的實(shí)例,在該⑶I中插件已被靜態(tài)圖像 替換。
[0013] 圖6為示出了根據(jù)一個(gè)實(shí)施例的用于選擇用于替換插件的圖像的方法的流程圖。
[0014] 圖7顯示了根據(jù)一個(gè)實(shí)施例的示例性⑶I,在該示例性⑶I中插件已被不滿足用作 替換圖像的標(biāo)準(zhǔn)的靜態(tài)圖像替換。
[0015] 圖8為示出了根據(jù)一個(gè)實(shí)施例的用于識(shí)別并選擇性地減少后臺(tái)進(jìn)程的過程的流 程圖。
[0016] 圖9為根據(jù)一個(gè)實(shí)施例的在后臺(tái)標(biāo)簽中顯示網(wǎng)頁的示例性GUI的屏幕截圖。
[0017] 圖10為根據(jù)一個(gè)實(shí)施例的示出網(wǎng)頁幾乎被Word文檔完全遮擋的示例性⑶I。
[0018] 圖11為根據(jù)一個(gè)實(shí)施例的示出網(wǎng)頁被最小化的示例性GUI。
[0019] 僅出于說明性目的,附圖示出并且【具體實(shí)施方式】描述了各種非限制性實(shí)施例。本 領(lǐng)域的技術(shù)人員根據(jù)以下論述將很容易認(rèn)識(shí)到,在不脫離本文所述的原理的情況下采用某 些情況下的本文所示出的結(jié)構(gòu)和方法的另選實(shí)施例。
【具體實(shí)施方式】
[0020] 本文描述了一種用于減少瀏覽器應(yīng)用程序或進(jìn)程的功率使用的方法和裝置。在以 下描述中示出了許多具體細(xì)節(jié),以提供對(duì)本發(fā)明的實(shí)施例的徹底解釋。然而,對(duì)于本領(lǐng)域的 技術(shù)人員顯而易見的是,在某些情況下本發(fā)明的實(shí)施例在不具有這些具體細(xì)節(jié)的情況下被 實(shí)施。在其他情況下,未詳細(xì)示出熟知的組件、結(jié)構(gòu)和技術(shù),以免模糊對(duì)本說明的理解。
[0021] 在本說明書中提到的"一個(gè)實(shí)施例"("oneembodiment"或"anembodiment")是 指結(jié)合實(shí)施例所述的特定特征、結(jié)構(gòu)或特性可被包括在本發(fā)明的至少一個(gè)實(shí)施例中。在本 說明書中的不同位置中出現(xiàn)的短語"在一個(gè)實(shí)施例中"不一定是指同一個(gè)實(shí)施例。引用單 數(shù)形式的實(shí)體應(yīng)被理解為涵蓋復(fù)數(shù),以適合上下文。
[0022] 下圖中示出的過程通過處理邏輯部件來執(zhí)行,該處理邏輯部件包括硬件(例如, 電路、專用邏輯部件等)、軟件(例如在通用計(jì)算機(jī)系統(tǒng)或?qū)S脵C(jī)上運(yùn)行的軟件)、或它們兩 者的組合。雖然下文按照某些順序操作來描述該過程,但應(yīng)當(dāng)理解,所任選描述的操作中的 一些操作可以不同的順序執(zhí)行。此外,在某些情況下,某些操作可并行執(zhí)行而并非順序執(zhí) 行。
[0023] 根據(jù)一個(gè)實(shí)施例,進(jìn)程(例如,瀏覽器)解析所接收的網(wǎng)頁以識(shí)別網(wǎng)頁上的一個(gè)或 多個(gè)媒體插件,并且將一組規(guī)則應(yīng)用于媒體插件以確定是否將功率節(jié)省過程應(yīng)用于這些插 件中的一個(gè)或多個(gè)插件。如果應(yīng)用功率節(jié)省過程,則從插件捕獲快照?qǐng)D像,并且選擇圖像中 的一個(gè)合適的圖像來替換網(wǎng)頁上的插件,從而節(jié)省了與允許媒體插件運(yùn)行相關(guān)聯(lián)的處理功 率。用戶隨后可通過點(diǎn)擊或以其他方式激活媒體插件來對(duì)其進(jìn)行重載。本文所述進(jìn)程涉及 媒體插件,諸如包括視頻、音頻或具有視頻或其他可視化部件的某種組合的那些媒體插件。 盡管所描述的一些方面應(yīng)用于具體可視化部件(例如,捕獲快照),但本文所述的其他方面 更一般地適用于不具有可視化部件的插件類型(例如,減少更新、暫停等)。
[0024] 根據(jù)另一個(gè)實(shí)施例,瀏覽器或進(jìn)程確定網(wǎng)頁在瀏覽器內(nèi)打開,以及打開網(wǎng)頁的內(nèi) 容是否可見(相對(duì)于被遮擋、最小化、在后臺(tái)標(biāo)簽中或以其他方式不可見),并且暫停或降 低與具有不可見內(nèi)容的網(wǎng)頁相關(guān)聯(lián)的更新速率。如本文所用,術(shù)語"被遮擋"是指至少部 分地由另一UI對(duì)象阻擋、遮蔽、或以其他方式掩蓋。瀏覽器或進(jìn)程與用于網(wǎng)頁內(nèi)容的定時(shí) 器一起工作以降低處理功率從而節(jié)省電池/功率,并且還與由操作系統(tǒng)對(duì)進(jìn)程的節(jié)流相協(xié) 調(diào)。該進(jìn)程還可被應(yīng)用作為用于不包括可視化內(nèi)容的插件的功率節(jié)省步驟。
[0025] 系統(tǒng)環(huán)境
[0026] 圖1為根據(jù)一個(gè)實(shí)施例的用于通過瀏覽器或在瀏覽器應(yīng)用程序中管理功率的其 他進(jìn)程來控制功率節(jié)省的計(jì)算環(huán)境100的高級(jí)框圖。盡管本文的實(shí)例描述了web瀏覽器執(zhí) 行該方法,但任何其他進(jìn)程也可結(jié)合來自瀏覽器的信息來執(zhí)行該方法。系統(tǒng)100包括一個(gè) 或多個(gè)計(jì)算設(shè)備105、一個(gè)或多個(gè)服務(wù)器110、一個(gè)或多個(gè)內(nèi)容提供器115和網(wǎng)絡(luò)120。
[0027] 在一個(gè)實(shí)施例中,內(nèi)容提供器115向計(jì)算設(shè)備105提供文章諸如網(wǎng)頁。如本文所 用,術(shù)語"文章"在一般意義上使用以指代文檔、網(wǎng)頁和其他內(nèi)容。網(wǎng)站是內(nèi)容提供器115的 一個(gè)實(shí)例。盡管在圖1中示出單個(gè)內(nèi)容提供器115,但在一些情況下,多個(gè)內(nèi)容提供器與計(jì) 算設(shè)備105進(jìn)行通信。
[0028] 計(jì)算設(shè)備105為電子設(shè)備,諸如臺(tái)式計(jì)算機(jī)(例如,iMac?)、膝上型電腦(例如, MacBook?)、平板電腦(例如,iPad?)、移動(dòng)電話(例如,iPhone?)、媒體設(shè)備(例如,iPod?) 等,每個(gè)電子設(shè)備均來自AppleInc。通常,計(jì)算設(shè)備105被配置為使得用戶能夠查看由內(nèi) 容提供器115或服務(wù)器110所提供的文章。服務(wù)器110為任何計(jì)算設(shè)備或云服務(wù)器諸如 iCloud?,并且在一些情況下,服務(wù)器為結(jié)合圖2所述的通用計(jì)算機(jī)或服務(wù)器級(jí)計(jì)算機(jī)。在 各種實(shí)施例中,網(wǎng)絡(luò)120包括同時(shí)使用有線通信系統(tǒng)和無線通信系統(tǒng)的局域網(wǎng)和/或廣域 網(wǎng)的任何組合。
[0029] 計(jì)算設(shè)備105包括web瀏覽器應(yīng)用程序125,諸如來自AppleInc.的Safar廣或來 自MicrosoftCorporation的InternetExplorei氣web瀏覽器應(yīng)用程序125具有多個(gè)模 塊:內(nèi)容檢索模塊130、DOM處理模塊135、渲染模塊140、插件識(shí)別模塊145、內(nèi)容提取模塊 150、基于模式的UI配置模塊155、圖像選擇模塊160、內(nèi)容呈現(xiàn)模塊165、可見性模塊170和 節(jié)流模塊175。
[0030] 如本領(lǐng)域中所已知的,術(shù)語"模塊"是指用于向計(jì)算設(shè)備105提供指定功能的計(jì)算 機(jī)程序邏輯部件。管理功率(例如,web瀏覽器125)和/或計(jì)算設(shè)備105的進(jìn)程的其他實(shí) 施例可具有與此處所述模塊不同的模塊和/或其他模塊,并且可在這些模塊之間以不同方 式分配功能。
[0031] 內(nèi)容檢索模塊130被配置為經(jīng)由網(wǎng)絡(luò)130從遠(yuǎn)程服務(wù)器110或其他內(nèi)容提供器 115或者從本地文件系統(tǒng)檢索文章(S卩,文檔、網(wǎng)頁和其他內(nèi)容),并且其為一種用于執(zhí)行該 功能的裝置。所接收的文檔可為基于超文本的,諸如HTML(超文本標(biāo)記語言)、XML(可擴(kuò)展 標(biāo)記語言)或其他標(biāo)記語言,以及CSS(層疊樣式表)、JavaScript和任何其他網(wǎng)頁呈現(xiàn)或 控制機(jī)制。
[0032] 在一個(gè)實(shí)施例中,D0M處理模塊135可處理(即,解析)文檔以識(shí)別文檔元素并由 文檔元素生成文檔對(duì)象模型(D0M)樹,并且其為一種用于執(zhí)行該功能的裝置。在一些情況 下,文檔元素為超文本元素,諸如HTML文檔中的HTML標(biāo)簽。在一些情況下,D0M樹表示文 檔元素之間的拓?fù)潢P(guān)系或結(jié)構(gòu)關(guān)系。文檔的D0M樹中的節(jié)點(diǎn)對(duì)應(yīng)于文檔的一個(gè)文檔元素。 文檔元素任選地包括文檔內(nèi)容和