Chrome不僅接管了網路,還接管了本地應用。在Windows、Mac甚至Linux上執行的許多應用程式都是由過時的Chrome組成的,Chrome引擎是googlechrome的基礎。
開發人員有幾種方法可以使用Chromium瀏覽器引擎構建應用程式。Electron是最為人熟知的,但許多其他應用程式使用的是CEF,Chromium嵌入式框架。
網上聊天?Slack是一個用Electron構建的流行應用程式。做筆記?Evernote使用CEF,Trello使用Electron。播放音樂?是的,你猜Spotify使用了CEF,亞馬遜音樂也是。
你可能認為微軟會迴避Chromium,因為它畢竟創造了Windows。你錯了。GitHub桌面、微軟團隊、Skype、visualstudio程式碼和Yammer都是電子應用程式。甚至新的Xbox應用程式Windows10也是用Electron構建的,而不是微軟自己的UWP(通用Windows平臺)
PC遊戲大多使用本地應用程式,但它們的啟動器和相關的聊天工具肯定不會。不和諧和抽搐.tv使用電子。戰網,Desura,Epic Games Launcher,GOG Galaxy,Uplay,甚至Steam都使用CEF。EA的Origin客戶端使用Qt-WebEngine,它還集成了Chromium程式碼。
透過瀏覽維基百科上非常不完整的Electron和CEF應用程式列表,您可以瞭解有多少應用程式使用Chromium。備份應用程式,如CrashPlan,以及密碼管理器,如Bitwarden和實用程式,如Adobe Creative Cloud。
相關報道:什麼是電子應用,為什麼它們變得如此普遍?
每個基於Electron或CEF的應用程式都捆綁了一個單獨的Chromium部分複製。雖然使用Electron和CEF的應用程式與web瀏覽器中的web應用程式類似,但它們的效率較低,並且在系統中佔用更多記憶體。
當你在一個Chrome標籤中開啟Gmail,在另一個Chrome標籤中開啟Facebook時,你的作業系統只需要執行一個Chrome副本。但是,當您執行兩個不同的Electron或CEF應用程式時,您的作業系統需要為每個應用程式分別提供一個Electron或CEF的副本。
尤其是基於電子的應用程式,其記憶體消耗量驚人,這種情況並不少見。同樣,由於這些應用程式中的每一個都包含單獨的Chromium檔案,因此它們會佔用系統上的額外空間。
Electron的安全文件解釋了為什麼它的程式碼基於Chromium的過時版本:
“While Electron strives to support new versi*** of Chromium as soon as possible, developers should be aware that upgrading is a serious undertaking—involving hand-editing dozens or even hundreds of files. Given the resources and contributi*** available today, Electron will often not be on the very latest version of Chromium, lagging behind by several weeks or a few months.”
即使在Electron專案建立了新版本之後,構建Electron應用程式的開發人員也必須獲取該程式碼,將其整合到Electron應用程式中,併發送更新。
然而,這並不像聽起來那麼可怕。Electron的文件建議開發人員避免顯示不受信任的程式碼,主要依賴本地資源或受信任的安全遠端內容。這就是為什麼許多電子應用程式看起來不像是web瀏覽器。例如,Slack使用web技術提供聊天介面,但只要單擊一個連結,就可以轉到web瀏覽器。
開發人員喜歡這些解決方案,因為他們使用的是大多數人已經熟悉的web技術。正如Electron在其主頁上自豪地吹噓的那樣,“如果你能建立一個網站,你就能建立一個桌面應用程式。”
然而,它們比簡單的web應用程式更強大。Electron應用程式可以訪問您的檔案系統和其他本地系統資源。許多CEF應用程式是嵌入Chromium瀏覽器的本地應用程式。例如,Steam嵌入了一個瀏覽器來顯示商店和社群介面。
電子應用程式也是跨平臺的,比如Chromium。您可以在Windows、Mac和Linux以及web上執行類似Slack的應用程式。如果一個開發者依賴於微軟的Edge或者蘋果的Safari技術,她就無法開發出一個跨平臺的應用程式。開發人員希望建立一個應用程式,然後在任何地方執行它。與為每個平臺建立本機應用程式相比,這節省了大量時間和資源。
這些鉻基解決方案在許多方面都比以前有所改進。在採用CEF之前,Steam嵌入了internetexplorer。Windows上的許多應用程式也只是簡單地嵌入了internetexplorer介面,而使用Chromium就更好了。
Electron、CEF和類似的技術有很多優點,但也有一些缺點。漸進式網路應用(progressivewebapps,PWAs)有朝一日可能會提供一條出路,因為它們為現代網路應用提供了一種離線工作的方式。然而,與Electron和CEF不同,PWAs在後臺使用標準的web瀏覽器。您也可以透過web瀏覽器安裝它們,無需手動更新和繫結Chromium程式碼。
隨著微軟轉向基於鉻的Edge瀏覽器,PWAs能否成功地與Electron展開競爭將是一個有趣的問題。這絕對是一個更乾淨的解決方案,記憶體使用率更低。
相關:什麼是漸進式網路應用?
...纜保護器:厭倦了損壞的充電電纜?有很多方法可以避免這個問題。你可以選擇一些簡單的東西,比如電子膠帶,或者一些更持久的東西,比如專用的電纜套管。我個人最喜歡的?熱收縮! ...
...號上網費用。當然,現在使用撥號上網的人並不多,所以這個數字主要是長期使用者。在谷歌上搜索美國線上的撥號上網,你會發現美國線上的優勢溢價計劃,其中包括撥號上網和一大群垃圾軟體,價格便宜,每月15美元。 ...
... 這個專案不僅有趣,而且還建立了一個功能性的儀表板。你不應該有任何深入的技術知識來讓這個工作,所以這是一個偉大的樹莓Pi專案的初學者。 ...
... 你以前用過這個網站嗎? 你相信嗎? 是否已檢查瀏覽器狀態列以確認連結目的地? 按鈕文字和字型是否與網站的其他部分匹配? ...
...,只要你有足夠的儲存空間。另外,如果兩臺計算機都在本地同步資料夾,那麼當一臺計算機上載檔案時,另一臺計算機將同時下載。 ...
...,直到最新版本的macOS。雙擊Finder中的檔案以提取AirMessage應用程式,然後將其拖到左側列表中的Applicati***資料夾。 ...
... 總體而言,這個應用程式既有優缺點。但是如果你經常旅行,並且喜歡離線觀看影片,鳳凰瀏覽器應該在你的裝置上。 ...
...覽器和電子郵件客戶端。Raspbian Stretch提供了許多附件和應用程式,您可以在完整的Linux桌面系統上找到它們,更不用說LibreOffice軟體套件了。 ...
... 如果您覺得這個解決方法很有趣,您可以學習如何更改瀏覽器的使用者代理,以便自己在其他網站上也這樣做。 ...