Android 11標配的新技術,再也不怕死機了!

開源項目以及更多學習資源地址在文末,Android之路,進取不止,你我共勉。

作爲經歷過HTC G1與摩托里程碑等早期安卓機時代的老玩家,我們對於“安卓手機系統更新”這個話題的熱衷度也一直很高。

一方面這是因爲我們認爲,安卓手機的用戶體驗在很大程度上與系統是否爲最新版本,以及是否能夠及時得到關鍵的驅動與軟件更新息息相關。

另一方面來說,由於系統更新、特別是給已經上市一年以上的老機型進行更新,註定是件“喫力不討好”的事情。

也就是說,從手機廠商對系統更新的積極與否,以及更新內容是否充實這件事上,其實也能在一定程度上判斷出他們的技術實力和對用戶的誠意。

三星Galaxy S10和Note10前不久剛剛通過官方更新,得到了不少S20的新功能正因如此,我們也經常會積極給大家報道最新的安卓版本與相關信息,同時也不時會“表揚”一些在這方面做得比較出色的廠商。事實上這些都是希望更多的消費者能夠重視手機系統更新這件事情,進而推動整個行業在這項服務上更爲積極,同時既能促進新技術的發展和普及,也可以給更多的消費者帶來福利。

然而系統更新不及時,有時候錯並不在於廠商。
雖然我們一直在強調着安卓手機系統更新的種種好處,但如果大家留意一下自己身邊的親戚朋友就會發現,可能有時候“安卓手機系統更新慢”的問題並不是出在手機廠商身上。因爲的確存在着廠商其實發布或是已經推送了新的系統版本,但用戶自己卻很長時間都沒能安裝更新的情況。 這是怎麼回事呢?其實最常見的理由有兩條。一是用戶可能根本就不懂得何謂“手機系統”、更不知道“系統更新”是何意思、有何好處,以及如何進行操作。這其實並不奇怪,對於那些手機是由兒女代買、代爲設置好、平時至多隻會打打電話、拍拍照、看看微信的年長用戶來說,這可以說是一種相當普遍而自然的狀況。 而這第二條理由,則多見於需要長時間保持手機接通的用戶。比如每天可能就是在不斷接打電話的生意人,或者需要盯着手機或電腦一連數個小時的炒股玩家、手遊達人。對於他們來說,“系統更新”即意味着手機會有幾分鐘甚至十幾分鍾變得完全無法使用,這顯然是無法接受的。

但是如此一來,就會使得新的狀況出現了。一方面來說,得不到及時更新,就意味着手機的性能、兼容性、安全性都無法達到最佳狀態,日常使用中反而會有更多麻煩。 另一方面來說,假設一部手機在廠商已經發布了系統更新文件,手機實際上也已經下載好,但是由於用戶不會或者不願進行操作,導致更新包就這樣“沉寂”在了存儲空間裏。過了許久之後,用戶才偶然點擊了“更新”按鈕,會發生什麼呢? 答案很簡單。更新可能會失敗,手機可能會變磚,又或者可能導致一部分應用和數據出錯。這或許源自不會操作的消費者在更新途中誤關機所致,但也有可能是因爲下載好的更新數據包,在閃存中因爲沒有及時安裝,過長的存儲週期裏因爲各種各樣的因素(相鄰區塊的讀寫、溫度變化、甚至原來的系統中了病毒),導致數據損壞。 而且後一種情況發生的概率可並不算太低,因爲我們自己就曾多次在PC上遭遇過相同的情況,因此對於“系統更新下載好之後卻沒有及時安裝”的後果早已是心有餘悸了。

新技術或成Android 11標配,帶來更新體驗革命
那麼問題就來了,如何才能避免上述的這些問題的出現呢?最徹底的辦法當然是更多的科普智能手機系統更新重要性,進而期冀更多的用戶都能真正用會,並用好手中的設備。但很顯然,這隻能是個美好的願望,實現起來的難度可能不亞於讓所有的電腦用戶都學會自己裝機。

相關的技術提交頁面

除此之外要想解決問題,唯一的辦法似乎也就只有從智能手機系統更新的方式上進行根本性的變革了。 好在,身爲安卓生態“老大哥”的谷歌,還真就早早就進行了相關技術的開發。根據近日的曝光的信息顯示,在如今正處於開發過程中的Android 11裏,一項名爲“虛擬A/B分區”的系統更新技術就已經被提交爲“必選特性”。也就是說如果不出意外,未來的安卓手機在系統更新方式與用戶體驗上即將迎來一次巨大的變革。 什麼是“虛擬A/B分區”?

簡單來說,其本質上就是一個系統鏡像備份機制。如果我們把手機當前正在使用的操作系統稱之爲“A系統”,那麼“虛擬A/B分區”就意味着手機裏會被額外劃分出一塊空間,用於存儲一個A系統的備份“B系統”。這兩個系統之間完全同步對稱,並且用戶所有在A系統中做出的改變,也都會被備份下來。

當手機收到了系統更新文件之後,便會在第一時間自動於備份空間內的“B系統”上安裝更新,與此同時A系統依然可以正常使用。直到用戶下一次關機或重啓時,手機就會將已經更新好的B系統作爲主系統啓動,而此前的A系統就會自動變成備份系統,開始鏡像備份B系統的內容。 如此一來,新技術帶來的好處就很明顯了。首先,它意味着系統安裝更新的整個過程中,手機將不再需要刻意去進行重啓、甚至不需要用戶自己去操作,能夠保證更新包下載完成就自動啓動安裝。此時用戶正在進行的任何操作都不會被打斷,既解決了小白用戶不會操作系統更新的問題,又提高了更新本身的成功率,而且即便萬一用戶在不知情的情況下,在後臺系統更新途中將手機關機,也不會造成系統損壞導致手機變磚,因爲此時被破壞的B系統將不會啓動,而是會在重啓之後將完好的A系統的內容備份過來,實現“自我修復”,然後再一次嘗試更新。

任何事物都有兩面,這一次也不例外
不難看出,“虛擬A/B分區”技術幾乎可以說是當前情況下,解決安卓系統一系列系統更新難題的一個最好方案。 它無需用戶懂得維護手機,不會中斷手機的使用體驗,也大大提高了系統更新本身的穩定性和成功率。而且從另一個角度上來說,因爲它極大簡化了系統更新的操作步驟(實際上相當於消費者完全不需要任何操作了),所以這也意味着廠商也沒法拿“更新太頻繁會影響用戶體驗”爲藉口去偷懶了。

emmc閃存的半雙工讀寫模式決定了它非常不適合這種後臺下載和更新功能

但這是不是意味着新技術就完全沒有缺點呢?不是的。 實際上只要大家仔細閱讀了前面我們講到的原理部分,就能看出來這項“虛擬A/B分區”技術其實存在着一個挺大的問題。那就是因爲它需要較爲完整的備份當前系統,而且還是後臺自動備份、自動安裝更新的機制,因此這項技術不僅會額外多佔據相當程度的存儲空間,並且可能對手機閃存性能要求也非常高。換句話說,大容量的UFS2.1閃存或許將會是基本需求,那些低容量的入門級機型,或是還在用emmc閃存的機型,可能就無法享受到這項新技術了。

然而,這就意味着一個新情況出現了。如果大家還記得我們過去曾經講到過,手機廠商出於利潤、技術難度,以及用戶口碑的考慮,通常都會積極給旗艦產品提供新系統和新功能的更新,但對低價位產品就往往就不會這麼上心的這回事。那麼Android 11上全新系統更新方式的來臨,更意味着廠商從此有了充分的理由不給入門級產品更新系統。因爲,他們的閃存容量或者速度或許從一開始就不太夠,無法滿足這一新功能的要求。

開源項目地址https://github.com/xieyuliang/Note-Android

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章