安卓這些年變化多驚人?那些老玩家才懂的回憶
新一代安卓系統很快就要正式和大家見面了,目前安卓10的前身安卓Q已經向Pixel設備推送了測試版,而安卓Q之中的“Q”到底會是什麼甜品,也成為了大家熱議的話題。算起來,安卓數字版本走到了“10”,而安卓用甜點作為系統代號的傳統,已經傳承了14代。從“Cupcake紙杯蛋糕”到未正式定名的“Q”,14種甜品見證了安卓的成長,也承載了無數老玩家的回憶。
從誕生伊始的iOS的跟隨者,到現今移動互聯網的主力軍,安卓這十多年的變化不可謂不驚人。在安卓10發布的前夕,就讓我們來回顧一下安卓的進化之路,談談那些只有安卓老玩家才懂的回憶吧。
安卓曾經的界面你記得嗎
早期安卓系統界面缺乏設計、粗製濫造的情況有目共睹,這和安卓誕生的歷史有著密切關係。追根溯源,安卓的歷史甚至要比iOS更悠久。在2003年10月,有“安卓之父”之稱的安迪·魯賓(Andy Rubin)創建了安卓科技公司,致力於為用戶研發更聰明的移動設備。2005年,Google收購了安卓公司,而魯迪也成為了Linux內核移動操作系統團隊的領導人——這個Linux內核的移動操作系統就是安卓。從這段歷史來看,安卓的資歷要比iOS更老。
然而,安卓在被Google推向消費市場時,卻是不折不扣的iOS跟隨者。2007年iPhone和iOS橫空出世,全觸屏的設計理念震動了整個業界。而在iOS公佈之前,安卓是以鍵盤機為硬件基準而設計的,iOS面世後,安卓受影響作了大刀闊斧的修改,硬生生將系統改成了觸屏式。在早期的安卓系統當中,甚至部分功能仍需要鍵盤才能實現,第一部推向市場的安卓機HTG G1仍帶有側滑式全鍵盤,就是最好的明證。
HTC G1和搭載其上的安卓1.X,系統界面設計比較粗糙
此情此景下,安卓界面缺乏設計也就是理所當然的事情。如果你是一名安卓老玩家,相信還會記得早年安卓的每個角落都無比缺乏細節的窘境。例如界面過渡缺乏動畫,菜單滑動缺乏阻尼,就連雙指捏合縮放也會漂移,更別說各種形態不一的圖標、參差不齊的框架佈局了。整個安卓1.X/2.X時代,安卓界面設計並不成體系,為了彌補這點市面上出現了不少重做整個系統界面的第三方ROM,大家熟悉的MIUI也誕生於這個年代。
安卓2.X的這些界面元素,恐怕很多新安卓用戶都沒見過了
到了安卓3.X/4.X,Google終於攢足了將系統界面整理成型的資本。Google挖角了WebOS的設計師Matias Duarte,為安卓重新設計了一套UI,Holo界面就此誕生。Holo的設計思路傳承自WebOS,大量交互都使用了WebOS的理念。WebOS卡片式多任務、拉扯通知即可呼出通知中心等設計,在Holo設計乃至此後的安卓界面中,都育著很高的上鏡率。
Palm OS的UI
安卓Holo界面,對比Plam OS可以發現很多地方都有傳承
Holo界面雖然並不華麗,但卻很有品位,甚至顯得比iOS當時的擬物風設計更加現代。Holo設計強調大內容塊(例如卡片)和簡約、有秩序的佈局,現在安卓上的很多經典元素依然傳承於Holo,例如漢堡菜單、界面滑動到底的動畫等等。最重要的是,Holo設計帶來了標準化,這令很多安卓App不再是iOS應用的簡單移植,而是按照安卓的設計規範來開發,安卓終於有了自己的視覺風格。
黑底藍光的Holo UI很酷很有科技感,但仍顯得比較生澀和冷冰
不過,Holo設計也存在很多缺點,例如內容密度偏小,操作並不是那麼的順手等等,Google在安卓5.0以後推出了視覺設計和交互邏輯都更完善的Material Design,Holo遂被取而代之。
安卓5.0後開始推行的Material Design,用類似剪紙的陰影營造層級,視覺效果變得更久優雅
在安卓5.0中,Material Design總體上繼承了Holo的交互思路,但視覺風格卻截然不同。Material Design使用了剪紙的擬態來營造UI層級,並加入了大量動態特效,令系統的交互邏輯一下子清晰了起來,而且交互過程變得更加鮮活。Material Design對Google意義重大,這意味著Google終於有了一套成熟的界面設計語言(Holo仍顯生澀),同時這套設計語言不僅用於安卓,在後來還延展到了Chrome以及各種Google服務的頁面當中。
一組Material Design設計的UI,自此以後,安卓有了能和iOS一較長短的UI設計
Material Design在之後並非一成不變,在安卓5.0後,Material Design的視覺效果變得更加圓潤,而佈局也逐漸靠近iOS,出現了底部功能按鈕等元素。和當初相比,現在安卓的界面設計已經翻天覆地,不過廣大用戶仍和之前一樣,很難享用到Google的原生設計,直接接觸的多是第三方廠商定制的界面。
不過,國內用戶最熟悉的還是各種定制UI,少有機會能接觸到安卓原生界面
安卓的界面從生澀走向成熟,從單一走向多樣,對於安卓的老界面,你還都記得嗎?
2安卓曾經的操作你還熟悉嗎?
安卓曾經的操作你還熟悉嗎?
安卓機要怎麼用?十年前的安卓用戶和現今的安卓用戶,給出的答案可能截然不同。原因很簡單,安卓的操作方式在這十年間發生了巨大改變,從最早的全鍵盤、機械按鍵,到四大、三大金剛電容鍵,屏幕虛擬鍵,到全面屏手勢,安卓的用法一直在改變。
前面提到,安卓在最早的時候是為適配全鍵盤手機而設計的,受iPhone影響才改為觸屏系統。在HTC G1上,可以看到觸摸屏和實體鍵盤並存的設計。在最早的安卓當中,系統甚至沒有虛擬鍵盤,輸入文字需要靠實體全鍵盤實現。
安卓最早的原型機為全鍵盤直板機,受iPhone影響才改為了觸屏機,但仍保留全鍵盤
到了安卓1.5時代,全鍵盤漸漸和大家說再見,不過此後機械按鍵仍必不可少。例如搭載安卓1.5的HTC Hero和安卓2.1 Nexus One,都保留了軌跡球,但從中也可以看到安卓的操作按鈕在不斷簡化,接聽電話的實體鍵消失,取而代之的是“搜索、返回、菜單、 Home”這“四大金剛”。在搭載安卓2.2的HTC MileStone當中,則同時出現了四大金剛電容鍵和機械按鍵,仍保留了全鍵盤,但這似乎也成為了保留機械實體鍵的最後一款爆款機型,安卓進入了電容鍵的時代。
早期的安卓,機械按鍵必不可少
隨後,安卓的按鍵數量被進一步縮減,從搭載安卓2.3的Nexus S開始,四大金剛中的搜索按鈕消失,只剩下“返還、Home、菜單”三大金剛。不過在形式上,各家安卓廠商的方案不同,例如同樣搭載了安卓2.3的Galaxy S,Home鍵就被設計為了正中央的機械按鈕。在此後的安卓機當中,這樣的設計仍非常常見,和電容鍵乃至之後的屏幕內虛擬鍵相比,這樣的設計能和指紋解鎖更好地結合在一起,因此久經不衰。
形態各異的四大金剛三大金剛,電容鍵漸成主流,而菜單鍵也被多任務鍵慢慢取代
在安卓3.X中,屏幕內虛擬按鈕的設計首次出現。不過安卓3.X為平板而生,未搭載到手機當中,而安卓平板一直不溫不火,因此人們對它印像不深。到了安卓4.X,屏幕內虛擬按鍵的設計全面來襲,Galaxy Nexus一馬當先,取消了屏幕外的電容鍵,將操作按鈕都集成到了顯示屏底部的小黑條當中。不僅如此,按鍵的功能也發生了變化,菜單鍵被多任務鍵取而代之,菜單鍵僅會在特定的APP當中出現。至此,安卓的操作方式再次發生了劇變。
從安卓4.0和Galaxy Nexus開始,Google倡導屏幕內虛擬按鍵,取消了機身正面的所有物理按鍵
安卓屏幕內虛擬按鍵的設計無疑是富具爭議的。它的優點主要有:一來靈活多變,廠商可以根據需求調整按鈕的位置乃至數量;二來不易誤觸,視頻、遊戲全屏的時候按鈕會隱藏,而屏幕外的電容鍵做不到這點;三來提高屏佔比,手機下巴不需要保留位置給按鈕,屏幕熄滅後的整體感也更強。但是屏幕內虛擬按鍵也有不可忽視的缺點,例如擠壓了顯示內容,又例如固定顯示更容易造成AM OLED屏幕燒屏等等。
一圖看安卓按鍵的變更,屏幕內虛擬按鍵能做到更大的屏佔比、實現更靈活的功能
儘管富具爭議,但在提高屏佔比的大潮下,屏幕內虛擬按鈕的方案仍越來越多地出現在各家廠商的產品當中。而隨著屏佔比進一步提升,全面屏概念推出,令虛擬按鈕也越來越沒有容身之處了。
在安卓P當中,Google為系統引入了類似iOS的手勢小白條,拖動按壓、拖動小白條即可實現返回桌面、呼出多任務等功能,成為了取代屏幕內虛擬按鍵的可選方案;而在安卓Q當中,手勢的設計更加激進,“三大金剛”全被取消,手勢正式成為安卓最主要的操作方式。
安卓P/安卓9的手勢小白條,到了安卓Q/安卓10中返回鍵也將會消失,安卓全面走向手勢時代
在這十年間,安卓系統的功能按鈕從繁雜到簡約,從全鍵盤到手勢,操作方式發生了翻天覆地的變化。全面屏時代已經來臨,手勢成為了潮流,在VR、AR等技術普及的未來,安卓的操作方式還會有什麼變化?我們共同期待吧。
3安卓曾經的玩法你折騰過嗎?
安卓曾經的玩法你折騰過嗎?
再來說說一些安卓曾經的玩法吧。安卓可謂是可玩性最高的移動操作系統之一,為了實現更好的體驗,不少朋友都折騰過安卓系統,不過隨著安卓本身的發展,不少玩法已經成為了時代的眼淚,只殘留在老玩家們的記憶當中了。下面這些玩法,你都折騰過幾樣?
APP移動到SD卡
在早期的安卓中,普遍可以使用SD卡進行擴容。儘管App默認並不是安裝到SD卡當中,但可以通過系統本身功能,或者App2SD之類的小工具,把App移動到SD卡。對於一些體積較大的App例如游戲,把App移動到SD卡意義還是比較重大的,要知道早期一堆安卓機自帶容量只有4G,SD卡可謂是承擔起了救苦救難的責任。
以前的安卓可以將APP移動到SD卡,SD卡照常使用
將APP移動到SD卡後,SD卡仍可以發揮原有的功用。你可以將SD卡取下來,插到別人的手機或者電腦上傳輸數據,U盤和擴容空間兩相宜。
不過,在安卓6.0以後,這功能的玩法走到了頭。在安卓6.0中,存儲空間仍可以通過SD卡擴容,但要么只能作為便攜式存儲,只能在其中存放音樂、照片等數據;要么只能作為內部存儲,格式化後和內部存儲空間同被劃分為一個分區,彼此交融,不能再單獨取出讀取數據。
現在APP安裝到SD卡必須格式化,且SD卡只能在本機使用
不僅如此,越來越多的安卓機,都取消了SD卡插槽。時至今日,你還記得將APP移動到SD卡的玩法嗎?
U盤模式
很多朋友看到這裡就會有疑問了,安卓不是一直都可以當U盤用嗎,為什麼說U盤模式是時代的眼淚?其實現在安卓能當U盤用,和之前安卓的U盤模式壓根就不是一回事。你有細心觀察的話,應該會知道現在要把安卓當U盤得選擇“MTP模式”,而不是以前的“USB大容量存儲模式”——這才是真正的U盤模式。
兩者有什麼區別呢?簡單來說,以前安卓的U盤模式會把安卓機的存儲空間直接掛載到PC系統上,令安卓的存儲空間化身分PC系統中的一個磁盤分區,操作起來和U盤是沒有什麼區別的。而現在的MTP模式,並不會把安卓的存儲空間掛載為PC磁盤分區,而只是通過MTP協議來傳輸數據。這兩種設計的用戶體驗,有著巨大差異。
安卓U盤模式下,手機是無法讀取機內文件的,現在安卓已經不再使用這一方案
首先來說說U盤模式的優點。由於直接把存儲空間掛載為PC盤符,所以你可以在PC上隨意瀏覽修改安卓機內的文件,傳輸速度也很快,下載軟件也能直接把東西下載到安卓機當中,不需要下載到本地再复制。但U盤模式帶來的問題也挺影響用戶體驗的,當你把安卓當U盤的時候,安卓系統就讀取不到機內文件了,而且一旦安卓使用的是PC認不出的磁盤格式,例如ext4等,PC就無法讀取安卓的存儲空間。
與之相比,MTP模式兼容性更好,只要PC支持MTP協議,無論安卓使用怎樣的磁盤格式,都可以讀取數據。雖然MTP速度慢,但PC和安卓都能同時操作機內文件,而且也更加安全,PC無法對一些安卓的關鍵數據進行修改。例如PC感染了病毒,病毒就難以通過MTP順藤摸瓜去破壞安卓的文件。當然,MTP的不便之處就是不能直接修改文件,需要先把文件拷貝出來在進行操作。
對於用戶來說,MTP顯然更不容易出問題。因此,性能更強的U盤模式被淘汰也在情理之中了。
手動Trim
安卓機用的是閃存,自然也會遇到閃存變“臟”的情況。簡單來說,閃存需要擦除數據後才能重新寫入,系統中刪除數據時,數據並不會在閃存上被物理刪除。如何讓系統智能地識別“臟”閃存,在數據寫入之前就把閃存清理乾淨?所用到的重要技術就是Trim。
在最早,安卓是不支持Trim的,因此安卓機用久了以後,閃存I/O效率會大為下降,卡頓也就油然而生。不過Linux本身是支持Trim命令的,因此通過Lagfix等APP,可以手動發起Trim,或者設置定時Trim,讓安卓恢復流暢。
安卓一度需要手動Trim
近年的操作系統包括Windows、macOS等,都已經全面支持Trim,作好了完善支持SSD的準備,如果安卓還需要手動Trim,那也未免太說不過去。在安卓4.3後,這一玩法成為了歷史。安卓4.3終於加入了系統Trim功能,得益於此,安卓的流暢度也提高了一個層次。
4安卓曾經的卡頓讓你刻骨銘心嗎?
安卓曾經的卡頓讓你刻骨銘心嗎?
說起安卓的蔑稱,“卡頓小王子”這外號是逃不過去的。如果你是老安卓玩家,一定會對早幾年安卓的卡頓印象深刻。而當時人們選擇iOS甚至WP的一大原因,往往是受夠了安卓三幀一卡五幀一頓的糟糕體驗。
而現在,不說安卓已經絕對流暢,起碼越來越少人將安卓卡頓視為難以接受的使用障礙;加之iOS在流暢度也翻了車,抱怨安卓卡頓就更缺乏理由了。安卓提升流暢度方面的努力,可謂是有目共睹。
影響安卓流暢度的第一大原因,就是後台調度機制,安卓的後台機制和Linux一脈相承,返回系統桌面並不會關閉APP的相應進程,而是讓APP在後台持續運行;當系統需要更多資源的時候,相應狀態的進程才會被請出去。然而不少APP都使用了種種手段駐留後台,系統本身壓根沒法將流氓APP的進程們清理出去。系統資源越來越吃緊,卡頓也就理所當然了。
安卓把APP進程分成不同類型,自動管理後台是否駐留,然而APP們可沒有那麼規矩
為了解決APP亂駐後台的問題,安卓可謂是費盡心思。在安卓5.X當中,Google推行了伏特計劃(Project Volta),系統新增了一個新的API JobScheduler,引入了對齊喚醒機制。APP的後台想要有什麼舉動,不能再密集喚醒,而是集中於某個時段一齊喚醒,減緩了卡頓的概率。而在安卓6.X當中,進一步引入了Doze機制,當系統檢測到手機長期靜止的時候,系統會讓後台進程進入休眠、極少喚醒,不再讓後台進程白白耗費手機電量。
Project Volta可讓進程對齊喚醒
在安卓7.X當中,安卓系統的進程調度就更加以流暢為本了,系統會限制後台能調用的資源,讓前台任務保持流暢。而在安卓8.X當中,其開發規範(API level 26以上)要求APP一旦進入後台,需要在短時間內停止所有的後台服務,也不可以隨便啟動新的後台服務。到了安卓9.0,系統則直接禁止APP調用第三方的API,並且不兼容API level 17——在以往APP可以用第三方或者老舊的API繞過安卓系統的限制,在最新版的安卓中,問題得到了較有效的解決。
安卓8.0限制APP後台服務
安卓卡頓的另一個因素,是UI渲染機制。在安卓2.X當中,安卓並沒有廣泛使用GPU加速渲染UI,直到安卓3.X蜂巢當中,才加入了系統級別的GPU硬件加速機制。在此後的安卓系統當中,可以在開發者模式中強制開啟硬件加速,讓系統強行使用GPU渲染APP界面。開啟後,很多原先卡頓的APP都如絲滑般流暢。
而安卓4.1推行了黃油計劃(Project Butter),通過同步機制(Vsync)和緩衝機制,將UI幀數提升到60幀的同時,把每一幀的渲染時間控制住0.0167ms左右。如此一來,安卓的UI就變得前所未有的絲滑順暢,為流暢度追趕iOS打下了良好的基礎。
安卓4.1引入Project Butter,讓安卓UI渲染幀數更穩定、更跟手
除此以外,安卓還改進了代碼運行效率。我們知道安卓大量模塊和APP都使用JAVA編寫,在安卓4.4之前,代碼需要運行時通過Dalvik即時編譯,會耗費大量資源;之後安卓引入了ART機制,APP安裝時會預先編譯,運行時效率更高。不僅如此,ART還帶來了改善的GC垃圾回收器,對流暢度的改善的立竿見影的。在安卓5.0中,Dalvik 虛擬機被徹底拋棄,ART全面普及,安卓APP的流暢度上了一個台階。而在安卓7.0以後,更是引入了混合編譯模式,保證JAVA運行效率的同時,安裝APP速度還大幅提升。
引入ART後,安卓運行JAVA的效率大增
另外,為了提高圖形渲染的效率,安卓7.0中還引入了Vulkan圖形接口,能夠更好地調用多線程、更直接地和硬件對話,不少游戲因此大大提高了幀數。例如大家熟悉的《王者榮耀》的Vulkan版,就比OpenGL ES版更加流暢。
Vulkan讓安卓的圖形性能有了長足的進步
種種舉措之下,加之硬件的進步(當前中低端的Soc驍龍670、710,帶寬也達到了14.9GB/s,之前常見的MT6753帶寬僅為5.3GB/s),安卓系統的流暢度已經不是什麼大問題。現在的安卓,已經很少出現初期那種卡住假死、幻燈片式掉幀乃至卡到重啟的情況了。“卡頓小王子”這一稱號,越來越成為安卓老玩家獨有的記憶。
總結
氣勢如虹走過了這十多年,安卓早已今非昔比。安卓Q已經向公眾推送了測試版,正式版安卓10也將會在今年和大家見面,第15個安卓甜點代號即將出爐。
這麼多代安卓甜品,你都嚐過嗎?
期盼著最新的安卓Q/安卓10,你是否還記得薑餅、冰淇淋三明治、果凍豆的味道?如果你還塵封著什麼關於安卓的記憶,歡迎在評論區和大家分享吧!