Search
Close this search box.

狂吃、狂吃、狂吃!Chrome 團隊:好啦我們真的吃很多資源

五月中,Chrome for Android 團隊在 Reddit 展開了他們的 AMA (Ask Me Anything)。關於無數的隨機存取記憶體(Random Access Memory,RAM)佔用指責,他們識趣地回覆了上圖裡那個 troller 自嘲。不過,除了無奈之外,他們還是回覆了不少有趣的精實內容。

  • 記憶體、記憶體、記憶體 ……

Image title

這是這次 AMA 裡被提及最多的問題,開發團隊顯然也知道。他們表示團隊確實有意識到記憶體佔用、記憶體洩漏等問題存在,他們正在「積極地解決」它(雖然這聽起來就像 Google 在每一次 Android 更新的時候都說減少了記憶體佔用,但結局往往…… )。

此外,他們也在嘗試解決功耗、GPU 支持等常見問題。今年來的幾個版本里,他們修復了首次操作延遲輸入延遲的錯誤。至於 RAM 問題的進展,你可以在這個issue 追踪頁查看最近進度。

很多用戶在 Chrome for Android 中切換標籤的時候會發現頁面被自動重載,為此浪費了很多時間,甚至有時候等頁面載入完就不記得自己要幹嘛了。根據團隊工程師的解釋,這個現像也和記憶體離不開關係:當一個新標籤或者後台其它應用需要更多記憶體的時候,Android 系統就會默默地從記憶體裡刪掉一個標籤頁,這個時候用戶切回去時就會遇到重載。便簽預覽只是那些網頁的截圖而已,和 Android 5.0 引入的多任務視圖一樣,並不代表那個標籤頁還被保留在後台中。

  • 改進 Chrome for Android 過程中最困難的問題是?

Image title

·首先是他們覺得公司福利太好,他們經常花很多時間糾結要吃什麼零食;

·Chrome 最初為桌面(系統和平台)設計,它的需求和使用場景和現在移動設備所處的環境有很大不同;

·保證他們對 Chrome 最初的改變能適應不同設備、不同 Android 版本、不同語言、不同系統架構、不同 GPU 驅動等;

·除了零食,他們還花很多時間在搭…… 樂高積木上……

(編者註:對,離圖片裡 Chrome 開發者最近的,就是網頁無法訪問報錯時 Chrome 顯示的那個小恐龍。小恐龍出現的時候,按空格或者點螢幕就會啟動一個彩蛋小遊戲)

  • Chrome for Android 未來還會做出什麼改進?

● 功能方面

他們會為「頁面內查找」功能引入語義識別,從而方便用戶搜索文本之外的多媒體內容。另外他們還會改進那些未對移動設備優化的網頁渲染方式(比如增加閱讀模式),此外還會添加一個對移動設備用戶而言更友好的新標籤頁。其中,閱讀模式已經出現在現有的 Dev. 分支裡了,很快會整合進 Stable 分支(多數人日常用的那個分支)當中。

● 設計方面

當前平板平台的 Chrome for Android 不像手機版那樣有標籤預覽功能,這是因為 Chrome 團隊在設計之初認為平板會是桌面 PC 的替代品,所以按照桌面 Chrome 的思路來設計它。然而,他們慢慢發現自己之前的判斷是錯的,用戶在手機上反而會完成更多、更複雜的任務,而且大螢幕手機也在不斷湧現。所以他們對便簽管理這個功能做了新的設計方案,這個方案會同時應用在平板和手機兩個平台的 Chrome 當中。

Android 4.x 中曾經引入的 Chrome 邊緣滑動手勢確定不會恢復到未來的更新裡,因為有很多網站會使用滑動來實現各種功能,和這個手勢很容易衝突。如果覺得單手使用下管理標籤太麻煩,他們給了一個小 tips:用戶可以按住右上角的菜單鍵,然後往下滑兩行到「打開新的標籤頁」再鬆手,就不用螢幕兩個頂角跑了。

桌面和移動端的 Chrome 瀏覽器在短期內都不會增加全功能的下載管理器,因為他們希望盡可能地讓 Chrome 在 UI 上保持​​間接,不過會陸續添加更多的控制選項。

● 其它特性

Android 在 5.0 版本中為 Chrome 引入了彩色標題欄功能,網站開發者只需要為自己的網頁增加幾行代碼就能讓標題欄變色。不過,這個功能到目前為止只有在用戶開啟「合併標籤頁和應用」(讓每個標籤頁都單獨呈現在多任務視圖裡)時才有效。對此,Chrome 團隊解釋稱,這是因為他們還在測試標題欄變色功能,所以選擇了一個小場景來試水,不過從目前為止的數據來看,已經有不少網站來適配了這個特性,所以他們會考慮將它擴展到常用視圖中。

另外,在跨平台標籤服務方面,他們曾經嘗試過讓兩個平台完全自動同步開啟標籤、閱讀進度、關閉標籤或窗口,但效果並不理想。他們認為現在的手機和 Chrome for Android 網頁渲染速度還太慢,性能不足。所以他們決定暫時保留現在的設置:Chrome 只會跨平台同步 URL 和網頁標題,但閱讀位置、表單填寫內​​容等瀏覽狀態不會發送到移動端上。

至於桌面版 Chrome 對觸摸的支持還很不完善,他們只給了一個客服式的標準答案:「有問題的話,請把詳細信息提交到 crbug.com」。

  • 裝置

Android 作為世界上用戶量最大的操作系統,Chrome for Android 團隊使用的設備也成為大家關注的話題。

Image title

他們一般使用 Nexus 系列設備作為自動化測試的平台,因為那些設備更容易取得 Root 權限。不過,在每個更新推出前,他們也會選一些主流設備來測試運行。上圖是他們從周圍隨手收集來的在役測試機。

而他們自己用的設備,Chrome for Android 團隊軟件工程師 Aurimas 給出了自己的清單:他現在在用三星 Galaxy S6,之前用 Droid Incredible、Galaxy S3、Nexus 4、Nexus 5、Moto X (2013)、HTC One M7、HTC One M8 等。他不考慮 Nexus 6,因為實在太大了。

至於編譯用機,是一台運行 Linux 的 HP Z620。

  • 和其他瀏覽器團隊的關係

作為近幾年市場佔有率成長最快的瀏覽器,也是當下網頁開發的事實標準,也有「好事者」關心 Chrome 團隊和其他瀏覽器團隊之間的關係。要知道,以前 Firefox 和 IE 團隊經常互相送蛋糕,但是 Chrome 團隊好像一直很低調。

Chrome 團隊表示,他們和 Firefox,甚至 IE 團隊都保持很緊密的合作關係,並且一起創建、推動下一代互聯網技術標準。(編者註:這確實不是客套話,Chrome 團隊現在和 IE Team 確實聯繫很密切,Project Spartan 項目的一個負責人曾經還在 Twitter 貼出過兩個團隊一起喝啤酒的照片,不過我一時找不到了)。

  • 延伸閱讀

Chrome for Android 九成開源!開發者快來挑戰手機版瀏覽器

再見了第三方平台,Google 宣布要封殺所有非官方 Chrome 插件

沒想到我會有怨恨 Chrome 的一天,它根本 IE 接班人(中槍)

2014 資安報告揭露:我最愛的 Chrome 竟榮登漏洞最多瀏覽器

(本文轉載自合作夥伴《36Kr》;未經授權,不得轉載)