安卓編年史(1):Android 0.5 Milestone 3——第一個公開版本
這些年來歷代安卓的主屏幕 [圖片提供:Ron Amadeo]
安卓已經以各種形式陪伴了我們六年以上。在這段時間內,我們已經看到了不同於任何已有開發周期的,絕對驚人的變化速度。當 Google 捲入智能手機的戰場中時,它拿出了它的快速迭代、Web 風格的更新周期,把它們應用到了開發這個操作系統之中,而結果就是突擊式的持續改進。近來,安卓項目甚至以前所未聞的六個月開發周期在運行,這可比它之前的開發周期慢。在安卓的第一年商業運作時,Google 每兩個半月就會發布一個新版本。
Google 在 2007 年 11 月時對安卓最初的視頻介紹:
同行業的其它公司和之相比,只能是以蝸牛的步伐在緩慢前進。微軟每三到五年升級它的桌面操作系統,蘋果對 OS X 和 iOS 以一年為一個更新周期。另外不是每個更新都是同等地位的。iOS 在七年內有一個主要的設計上的大變動,而最新的 Windows Phone 8 看起來和 Windows Phone 7 十分相似。但在安卓上,如果用戶能看到今年的任何東西看起來和去年一樣,那簡直是中彩票了一樣。比如 Play 商店,五年內有五次的重新設計。對安卓來說那更是家常便飯。
回頭看看,安卓的存在是很模糊的。從其歷史來看,現在它是個使用量巨大的操作系統。近十億的設備銷量,以及每天一百五十萬左右的激活量——但 Google 是如何達到這種地步的?安卓現在如此水平的規模和成功,可能會讓你覺得安卓從零開始到萬眾矚目的英雄,覆蓋到了方方面面。但事實上不是這樣的。安卓在早期並不流行,以及直到安卓 4.0 屏幕截圖還只能通過開發者工具實現。這兩個因素意味著你無法輕易找到許多安卓早期版本的圖片或信息。
對於早期版本的缺乏覆蓋問題現在稱作「安卓早期版本的消亡現象」。儘管像 Windows 1.0 這樣的系統可以永遠在你身邊——只要找台舊電腦把它裝上去就好了——安卓可以被認為是第一個基於雲的操作系統。許多功能嚴重依賴 Google 的服務來實現。隨著越來越少的人使用老版本的安卓,那些服務被逐漸關閉。當一個依賴雲的應用其服務支持停止之後,它再也不能正常運作——應用崩潰並顯示空白的屏幕,或直接無法啟動。
正是由於這種「雲腐爛」現象,安卓回顧展在幾年內不可能出現。早期版本的安卓沒有了雲的支持會是一個不能正常工作的破碎的空殼。儘管可以簡單地認為這是早期版本安卓漸漸消失的一種方法,但這就是正在發生的。就在寫到這裡的時候,正有無數的應用因為伺服器支持被關閉而失去作用。例如早期的谷歌地圖和安卓市場客戶端,已經不能和 Google 伺服器交互。它們會彈出錯誤消息並崩潰或者是顯示一個空白的界面。有些應用甚至在前一個星期正常運行,然後下個星期就宣告死亡,因為就在我們寫下這篇文章的時候谷歌正在積極地關閉伺服器!
為了防止在滾滾歷史裡丟失掉更多關於安卓的過去,我們做了需要完成的工作。這裡有 20+ 個版本的安卓,七台設備,以及無數的屏幕截圖被集合到一起。這就是安卓編年史,從最早的公開版本到最新的 KitKat。
目錄
- Android 0.5 Milestone 3——第一個公開版本
- Android 0.5 Milestone 5——報廢介面的領地
- Android 0.9 Beta——嘿,這看起來很眼熟!(2,3)
- Android 1.0——谷歌應用的引入和實體硬體
- Android 1.1——第一個真正的增量更新
- Android 1.5 Cupcake——虛擬鍵盤打開設備設計的大門
- Android 1.6 Donut——CDMA支持將安卓帶給了各個運營商
- Android 2.0 Éclair——帶動GPS產業
- Android 2.3 Gingerbread——第一個 UI 大變
- Android 3.0 Honeycomb——平板和設計的新生(2,3)
- Android 4.0 Ice Cream Sandwich——摩登時代
- Android 4.1 Jelly Bean——Google Now 指明未來
- Android 4.2 Jelly Bean——新Nexus設備,新平板界面
- Android 4.3 Jelly Bean——為可穿戴設備做好準備
- Android 4.4 KitKat——更完美;更少的內存佔用(2)
Android 0.5, Milestone 3——第一個公開版本
在我們開始在實體硬體上研究安卓之前,我們要從很早,很早以前的安卓時光開始說起。儘管 1.0 是第一個運行在實體硬體上的版本,但在那之前其實還有若干個只隨 SDK 發布的模擬器 beta 版本。這些模擬器只用於開發的目的,所以它們不含任何谷歌應用,甚至只是一些核心系統應用。但它們仍然是回顧安卓的發布前時光的最好渠道。
模擬器默認的 qwerty 布局並運行 Milestone 3 [Ron Amadeo供圖]
在異想天開的糖果版本代號和與跨國食品公司跨界合作之前,第一個安卓的公開發布版本的標籤是「m3-rc20a」——「m3」代表「Milestone 3(里程碑3)」。儘管谷歌可能不會公布版本號——這個版本甚至沒有一個設置應用來查看——瀏覽器用戶標識被識別為「Android 0.5」。
在 2007 年 11 月,谷歌收購安卓兩年、iPhone 發布五個月之後,安卓正式發布,第一個模擬器正式釋出。回到那時候看,這個系統才剛處於起步階段。它很容易就被認為「只是個黑莓的山寨而已」。模擬器使用了一個 qwerty 布局的皮膚以及 320×240 的顯示屏,是一台原型設備的複製品。這台設備由 HTC 製造,通過一些早期的安卓賬戶可以得知這台設備的代號似乎是「Sooner」。但是 Sooner 從未正式上市。
通過安卓早期開發賬號得知,當蘋果在 2007 年 1 月最終發布它革命性的智能手機後,谷歌不得不對安卓「從頭來過」——包括放棄 Sooner。考慮到 Milestone 3 模擬器在蘋果的 iPhone 後近一年才推出,設備界面看起來還是那麼像黑莓的模型實在是令人驚奇的事情。儘管在 iPhone 發布後的開發任務毫無疑問地在優先保障下完成了,但模擬器仍然以被認為是「舊學院風」的界面發布。這使得它沒能給人留下一個好的第一印象。
在早期階段,安卓按鍵布局看起來並沒有最終確定下來。儘管第一台商業安卓設備使用了「主屏幕」,「後退」,「菜單」以及「搜索」作為標準的按鍵套件,模擬器上有一個空白的標記為「X」的鍵,你可能會認為是那是搜索鍵應該在的地方。「Sooner」原型機看起來更奇怪——它在第四個鍵上有個星形標記。
從左到右:主屏幕,一個打開的通知,以及「應用」文件夾 [Ron Amadeo供圖]
在這裡沒有可以配置的主屏幕或小插件,僅僅只是簡單的在底部有聚合圖標的 dock,可以循環或是點擊。儘管已經有一些特性支持觸摸屏,Milestone 3 主要還是使用五向十字鍵——一個時至今日安卓仍然支持的不合時宜的設計。甚至早期的安卓都能夠實現動畫效果。圖標在進入 dock 的中心窗口時會變大或縮小。
在這時候同樣也還沒有通知欄。通知圖標顯示在頂部狀態欄(上面圖片中的微笑標誌),打開它的唯一方法是在主屏幕按下十字鍵的上鍵。你無法通過點擊微笑的圖標來打開它,也無法從除主屏幕以外的地方打開通知。當通知被打開的時候,狀態欄擴展開些許,通知文本會顯示在一個聊天氣泡中。一旦你閱讀完通知,你無法手動清除它——應用本身負責清除它的通知消息。
應用抽屜的職責由托盤左側簡單的「應用程序」文件夾負責。儘管有著不少標誌性的功能,Milestone 3 模擬器應用圖標還不是十分完善。只有「瀏覽器」,「聯繫人」 ,以及「地圖」是這裡面真正的應用。奇怪的是,「最近通話」被提升為一個獨立的圖標。因為這僅僅只是個模擬器,像鬧鐘,日曆,撥號,計算器,照相機,相冊,以及設置這樣的智能手機核心功能的圖標統統沒有。硬體原型倒是有其中的大部分,它還有一套谷歌應用出現並運行著。不幸的是我們沒辦法看到它們了。它們已經老到無論如何都連不上谷歌的伺服器了。
Milestone 3 的瀏覽器菜單系統,壁紙界面,以及音量控制 [Ron Amadeo供圖]
這套現在已經過時的菜單系統出現並運行在 Milestone 3上。點擊實體菜單鍵會打開一個灰色帶有藍色梯度高亮的列表,通過實體鍵盤完成操作。在上面的截圖中,你可以看到在瀏覽器中打開的菜單。進入二級菜單,像縮放菜單,一級菜單這些變成有些奇怪的透明狀態。
令人驚喜的是,多任務及後台應用在 Milestone 3 上已經可以運作了。離開應用而不關閉它——應用會保存狀態,甚至寫入文本保存。這個特性直到 2010 年 iOS 推出 iOS 4 才能與其相比,這就真正顯示出了這兩個平台的不同。iOS 最初是作為一個封閉的平台而沒有第三方應用,所以平台的健壯性並沒有得到很大的關注。安卓是從頭開始被構建成一個強大的應用軟體平台,輕鬆開發應用是它創造出來背後的推動力之一。
在安卓之前,谷歌已經通過 WAP 網站和 J2ME 手機應用向移動端開始遷移,這使得它們強烈地意識到移動開發的難度。據 The Atlantic 報道,拉里.佩奇曾這麼描述公司在移動端的努力「我們有超過 100 台的一系列手機,我們在每一台設備上都要構建一次我們的應用」。開發者們現在經常抱怨安卓的碎片化,但在安卓出現之前,問題要比現在糟糕很多。
谷歌的平台戰略實際上勝出了,iOS最終在不久後開始慢慢加入這些圍繞應用的特性——多任務,跨應用分享,以及應用切換。
當你在主屏幕按數字鍵彈出的撥號界面,來電,以及電話會議界面 [Ron Amadeo供圖]
儘管沒有撥號圖標,Milestone 3 模擬器還是有辦法撥號。按鍵盤上的任意鍵會打開上圖左側的界面,這是撥號/聯繫人搜索混合界面。僅輸入數字並點擊綠色的實體撥號鍵來開始通話,輸入字母會搜索聯繫人。但是聯繫人無法通過數字搜索。甚至直接點擊一個號碼也不會打開聯繫人。
來電被顯示成一個幾乎全屏的令人愉快的透明背景彈窗。一旦進入通話,背景會變成深灰色,Milestone 3 展現給用戶一些令人驚奇的高級特性:靜音,揚聲器,通話保持,以及電話會議按鈕。多方通話會顯示成重疊,半透明的卡片狀,用戶有切換或者合併通話的選項可以選擇。切換通話會觸發一個漂亮的小卡片洗牌動畫。
聯繫人列表,打開一個聯繫人,編緝聯繫人,以及最近通話界面 [Ron Amadeo供圖]
聯繫人是一個質樸的,黑色和藍色的姓名列表。聯繫人卡片中有個聯繫人頭像的位置但是沒辦法設置一張圖像上去(至少在模擬器中不行)。這裡唯一的裝飾是每個聯繫人名字左側的 XMPP 狀態點。就傳統來說,一個保持在線的 XMPP 連接是安卓的核心,它的深度集成從 Milestone 3 就已經開始了。安卓使用 XMPP 來驅動一個 24/7 在線的與谷歌伺服器之間的連接,以驅動 Google Talk 的雲到端消息推送,以及應用的安裝和卸載信息。
瀏覽器的假 Google首 頁,地址欄,瀏覽歷史界面 [Ron Amadeo供圖]
瀏覽器運行 Webkit 419.3,它也被用在相同時代的像 Mac OS X 10.4 的 Safari 2上。瀏覽器主頁並不是 Google.com,而是一個包含在安卓里的硬編碼的 home.html 文件。它看起來就像是千年之前的 Google.com。瀏覽器的 OS X 遺留還可以辨認出來,用了順滑的、Aqua 風格的搜索按鈕來渲染瀏覽器按鈕。
這個小小的黑莓風格的屏幕需要一個分離的地址欄,可以通過瀏覽器菜單里的「前往」選項打開。儘管自動補全不起作用,地址欄會在你輸入的時候實時搜索你的瀏覽歷史。右側圖片顯示的是歷史界面,它使用了略縮圖來顯示各個站點。當前的略縮圖在其它兩個縮略圖之前,滑動它們會觸發一個俯衝動畫效果。但在早期階段,瀏覽器不支持多標籤或窗口——你可以看到當前站點,那就是全部了。
一個視頻屏幕抓取導出的谷歌地圖界面,方向界面,相冊測試界面 [Ron Amadeo供圖]
在開始的時候,谷歌認識到在移動端地圖將會非常重要,甚至在 Milestone 5 模擬器中內置了地圖客戶端。那個版本的谷歌地圖是我們遇到的第一個死於雲腐爛的!這個客戶端無法從谷歌的伺服器上載入信息,所以地圖顯示為一片空白,灰色的網格。沒有什麼能夠工作。
幸運的是,因為上面的第一張截圖,我們能夠從安卓啟動視頻中拼湊出準確的界面。舊的谷歌地圖看起來完全是為非觸摸設備準備的,實體鍵快捷方式列表排列在屏幕底部。這樣在看地圖時,或是在如果僅僅顯示該點的地址的時候就不大清楚。
隱藏在菜單之後的是搜索選項,路線,以及衛星和交通圖層。中間的截圖是獲取路徑的 UI 之一,你可以選擇一個聯繫人的地址作為起點或者終點。但地圖缺乏任何種類的集成 GPS,你在哪都找不到「我的位置」這個按鈕。
儘管沒有合適的相冊,不過在右邊是相冊的測試界面,隱藏在「API Demos」應用里。圖片可以向左向右滾動,但無法以全屏的方式打開一張照片。同樣它也沒有照片管理選項。它本質上就是個圖片滾動界面的測試視圖。
時間設置和日曆,有點字間距問題,以及以 Ars Technica 為特色的垂直列表測試 [Ron Amadeo供圖]
同樣模擬器中也沒有設置應用,但是通過 API Demos 我們可以看到最初的日期時間設置界面。這個示例暴露出很多安卓沒來得及處理的問題:到處都有的字間距問題,分鐘數字間巨大的間隔,以及日曆中星期日間不均等的間隔。儘管時間設置允許你單獨更改每個數字,但除非你將當前日期移出本月到前一個或下一個月,否則你無法改變月份或年份。
別忘了儘管這看起來像是一些被遺忘時代的恐龍級別遺留物,但這僅僅是六年前發布的。我們總趨向與適應科技的腳步。我們很容易將這樣的東西看作是 20 年前的東西。比較一下 2007 年晚些時候這個時間段的桌面操作系統,微軟嘗試將 Windows Vista 售往全世界快要一年了,而蘋果剛剛發布了 OS X 10.5 Leopard。
最後一個關於 Milestone 3 的細節:谷歌在 Milestone 3 模擬器中給了 Ars Technica 一個快捷方式。打開「API Demos」應用並打開"Views," "Focus,",然後"Vertical"顯示一個 this very Website 的頭條測試列表。
隨 Milestone 3,RC37a 發布的更加現代、全觸控風格的模擬器 [Ron Amadeo供圖]
兩個月後,2007 年 12 月,谷歌放出了一個 Milestone 3 的更新,帶來了更大的 480×320 設備設置。這個更新的標籤是「m3-rc37a」。軟體看起來還是像黑莓一樣,僅僅是帶來了更多的屏幕解析度支持。
Ron Amadeo / Ron 是 Ars Technica的評論編緝,專註於安卓系統和谷歌產品。他總是在追尋新鮮事物,還喜歡拆解事物看看它們到底是怎麼運作的。@RonAmadeo
via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-history-of-googles-mobile-os/
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive