Linux中國

安卓編年史(13):Android 2.2 Froyo——更快更華麗

Android 2.2 Froyo——更快更華麗

安卓 2.2 在 2010 年 5 月,也就是 2.1 發布後的四個月後亮相。Froyo(凍酸奶)的亮點主要是底層優化,只為更快的速度。Froyo 最大的改變是增加了 JIT 即時編譯。JIT 自動在運行時將 java 位元組碼轉換為原生碼,這會給系統全面帶來顯著的性能改善。

瀏覽器同樣得到了性能改善,這要感謝整合了來自 Chrome 的 V8 Javascript 引擎。這是安卓瀏覽器從 Chrome 借鑒的許多特性中的第一個,最終系統內置的瀏覽器會被移動版 Chrome 徹底替代掉。在那之前,安卓團隊還是需要提供一個瀏覽器。從 Chrome 借鑒特性是條升級的捷徑。

在谷歌專註於讓它的平台更快的同時,蘋果正在讓它的平台更全面。這位谷歌的競爭對手在一個月前發布了 10 英寸的 iPad,先行進入了平板時代。儘管有些搭載 Froyo 和 Gingerbread 的安卓平板發布,但谷歌的官方回應——安卓 3.0 Honeycomb(蜂巢)以及摩托羅拉 Xoom——在 9 個月後才來到。

Froyo底部添加了雙圖標停靠欄以及全局搜索。

Froyo 底部添加了雙圖標停靠欄以及全局搜索。 [Ron Amadeo 供圖]

Froyo 主屏幕最大的變化是底部的新停靠欄,電話和瀏覽器圖標填充了先前抽屜按鈕左右的空白空間。這些新圖標都是現有圖標的白色定製版本,並且用戶沒辦法自己設置圖標。

默認布局移除了所有圖標,屏幕上只留下一個使用提示小部件,引導你點擊啟動器圖標以訪問你的應用。谷歌搜索小部件得到了一個谷歌 logo,它同時也是個按鈕。點擊它可以打開一個搜索界面,你可以限制搜索範圍是在互聯網、應用或是聯繫人之內。

下載頁面有了「更新所有」按鈕,這是個 Flash 應用,一個 flash 驅動的一切皆有可能的網站,以及「移動到 SD」按鈕。

下載頁面有了「更新所有」按鈕,這是個 Flash 應用,一個 flash 驅動的一切皆有可能的網站,以及「移動到 SD」按鈕。 [Ryan Paul 供圖]

還有一些優秀的新功能加入了 Froyo,安卓市場加入了更多的下載控制。有個新的「更新所有」按鈕固定在了下載頁面底部。谷歌還添加了自動更新特性,只要應用許可權沒有改變就能夠自動安裝應用;儘管如此,自動更新默認是關閉的。

第二張圖展示了 Adobe Flash 播放器,它是 Froyo 獨有的。這個應用作為插件加入了瀏覽器,讓瀏覽器能夠有「完整的網路」體驗。在 2010 年,這意味著網頁充滿了 Flash 導航和視頻。Flash 是安卓相比於 iPhone 最大的不同之一。史蒂夫·喬布斯展開了一場對抗 Flash 的聖戰,聲稱它是一個被淘汰的、充滿 bug 的軟體,並且蘋果不會允許它在 iOS 存在。所以安卓接納了 Flash 並且讓它在安卓上運行,給予用戶在安卓上擁有接近可用的 flash 實現。

在那時,Flash 甚至能夠讓桌面電腦崩潰,所以在移動設備上一直保持打開狀態會帶來可怕的體驗。為了解決這個問題,安卓瀏覽器上的 Flash 可以設置為「按需打開」——除非用戶點擊 Flash 占點陣圖標,否則不會載入 Flash 內容。對 Flash 的支持將會持續到安卓 4.1,Adobe 在那時放棄並且結束了這個項目。Flash 從頭到尾從未在安卓上完美運行過。而 Flash在 iPhone 這個最流行的移動設備上的缺失,推動了互聯網最終放棄了這個平台。

最後一張圖片顯示的是新增的移動應用到 SD 卡功能,在那個手機只有 512 MB內置存儲的時代,這個功能十分的必要的。

駕駛模式應用。相機現在可以旋轉了。

駕駛模式應用。相機現在可以旋轉了。 [Ron Amadeo 供圖]

相機應用終於更新支持縱向模式了。相機設置被從抽屜中移出,變成一條半透明的按鈕帶,放在了快門按鈕和其他控制鍵旁邊。這個新設計看起來從 Cooliris 相冊中獲得了許多靈感,半透明的、有彈性的聊天氣泡彈出窗口。看到更現代的Cooliris 風格 UI 設計被嫁接到皮革裝飾的相機應用確實十分奇怪——從審美上來說一點都不搭。

半殘缺的Facebook應用是個常見的2x3導航頁面的優秀範例。谷歌Goggles被包含了進來但同樣是殘缺的。

半殘缺的 Facebook 應用是個常見的 2x3 導航頁面的優秀範例。谷歌 Goggles 被包含了進來但同樣是殘缺的。 [Ron Amadeo 供圖]

不像在安卓 2.0 和 2.1 中包含的 Facebook 客戶端,2.2 版本的仍然部分能夠工作並且可以登錄 Facebook 伺服器。Facebook 應用是谷歌那時候設計指南的優秀範例,它建議應用擁有一個含有 3x2 圖標方陣的導航頁並作為應用主頁。

這是谷歌的第一個標準化嘗試,將導航元素從菜單按鈕里移到屏幕上,以便用戶找到它們。這個設計很實用,但它在打開應用和使用應用之間增加了額外的障礙。谷歌不久後會意識到當用戶打開一個應用,顯示應用內容而不是中間導航頁是個更好的主意。以 Facebook 為例,打開應用直接打開信息訂閱會更合適。並且不久後應用設計將會把導航降級到二層位置——先是作為頂部的標籤之一,後來谷歌放在了「導航抽屜」,一個含有應用所有功能位置的滑出式面板。

還有個預裝到 Froyo 的應用是谷歌 Goggles,一個視覺搜索應用,它會嘗試辨別圖片上的主體。它在辨別藝術品、地標以及條形碼時很實用,但差不多也就這些了。最先的兩個設置屏幕,以及相機界面,這是應用里僅有的現在還能運行的了。由於客戶端太舊了,實際上你如今並不能完成一個搜索。應用里也沒什麼太多可看的,也就一個會返回搜索結果頁的相機界面而已。

Twitter應用,一個充滿動畫的谷歌和Twitter的合作成果。

Twitter 應用,一個充滿動畫的谷歌和 Twitter 的合作成果。 [Ron Amadeo 供圖]

Froyo 擁有首個安卓 Twitter 應用,實際上它是谷歌和 Twitter 的合作成果。那時,Twitter 應用是安卓應用陣容里的大缺憾之一。開發者們更偏愛 iPhone,加上蘋果佔領先機和嚴格的設計要求,App Store 里可選擇的應用遠比安卓的有優勢。但是谷歌需要一個 Twitter 應用,所以它和 Twitter 合作組建團隊讓第一個版本問世。

這個應用代表了谷歌的新設計語言,這意味著它有個中間導航頁以及對動畫要求的「技術演示」。Twitter 應用甚至比 Cooliris 相冊用的動畫效果還多——所有東西一直都在動。所有頁面頂部和底部的雲朵以不同速度持續滾動,底部的 Twitter 小鳥拍動它的翅膀並且左右移動它的頭。

Twitter 應用實際上有點 Action Bar 早期前身的特性,在安卓 3.0 中引入了一條頂部對齊的連續控制條。沿著所有屏幕的頂部有條擁有 Twitter 標誌以及如搜索、刷新和發推這樣的按鈕的藍色橫欄。它和後來的 Action Bar 之間大的區別在於 Twitter / 谷歌這裡的設計的右上角缺少「上一級」按鈕,實際上它在應用里用了完整的第二個欄位顯示你當前所在位置。在上面的第二張圖裡,你可以看到整條帶有「Tweets」標籤的專用於顯示位置的欄(當然,還有持續滾動的雲朵)。第二個欄的 Twitter 標誌扮演著另一個導航元素,有時候在當前部分顯示額外的下拉區域,有時候顯示整個頂級快捷方式集合。

2.3 Tweet 流看起來和今天的並沒有什麼不同,除了隱藏的操作按鈕(回復,轉推等),都在右對齊的箭頭按鈕里。它們彈出來的是一個聊天氣泡菜單,看起來就像導航彈窗。仿 Action Bar 在發推頁面有重要作用。它安置著 twitter 標誌,剩餘字數統計,以及添加照片、拍照,以及提到聯繫人按鈕。

Twitter 應用甚至還有一對主屏幕小部件,大號的那個佔據 8 格,提供了發推欄、更新按鈕、一條推文,以及左右箭頭來查看更多的推文。小號的顯示一條推文以及回復按鈕。點擊大號的小部件的發推欄立即打開了「新推文」主窗口,這讓「更新」按鈕變得沒有價值。

Google Talk和新USB對話框。

Google Talk 和新 USB 對話框。 [Ron Amadeo 供圖]

其他部分,Google Talk(以及沒有截圖的簡訊應用)從暗色主題變成了淺色主題,這讓它們看起來和現在的更接近現代的應用。USB 存儲界面會在你設備接入電腦的時候從一個簡單的對話框進入全屏界面。這個界面現在有個一個異形安卓機器人 / USB 快閃記憶體盤混合體,而不是之前的純文字設計。

儘管安卓 2.2 在用戶互動方式上沒有什麼新特性,但大的 UI 調整會在下兩個版本到來。然而在所有的 UI 工作之前,谷歌希望先改進安卓的核心部分。

語音操作——口袋裡的超級電腦

2010 年 8 月,作為語音搜索應用的一項新功能,「語音命令」登陸了安卓市場。語音命令允許用戶向他們的手機發出語音命令,然後安卓會試著去理解他們並完成任務。像「導航至[地址]」這樣的命令會打開谷歌地圖並且開始逐嚮導航至你所陳述的目的地。你還可以僅僅通過語音來發送簡訊或電子郵件、撥打電話、打開網站、獲取方向,或是在地圖上查看一個地點。

語音命令是谷歌新應用設計哲學的頂峰。語音命令是那時候最先進的語音控制軟體,秘密在於谷歌並不在設備上做任運算。一般來說,語音識別是 CPU 密集型任務。實際上,許多語音識別程序仍然有「速度與準確性」設置,用戶可以選擇他們願意為語音識別演算法運行等待的時間——更多的 CPU 處理意味著更加準確。

谷歌的創新在於沒有勞煩手機上能力有限的處理器來進行語音識別運算。當說出一個命令時,用戶的聲音會被打包並通過互聯網發送到谷歌雲伺服器。在那裡,谷歌超算中心的超級計算機分析並解釋語音,然後發送回手機。這是很長的一段旅程,但互聯網最終還是有足夠快的速度在一兩秒內完成像這樣的任務。

很多人拋出詞語「雲計算」來表達「所有東西都被存儲在伺服器上」,但這才是真正的雲計算。谷歌在雲端進行這些巨量的運算操作,又因為在這個問題上投入了看似荒唐的 CPU 資源數目,所以語音識別準確性的唯一限制就是演算法本身了。軟體不需要由每個用戶獨立「訓練」,因為所有使用語音操作的人無時不刻都在訓練它。藉助互聯網的力量,安卓在你的口袋裡放了一部超級電腦,同時相比於已有的解決方案,把語音識別這個工作量從口袋大小的電腦轉移到房間大小的電腦上大大提高了準確性。

語音識別作為谷歌的項目已經有一段時間了,它的出現都是因為一個 800 號碼。1-800-GOOG-411是個谷歌從 2007 年 4 月起開通的免費電話信息服務。它就像 411 信息服務一樣工作了多年——用戶可以撥打這個號碼詢問電話號碼——但是谷歌免費提供這項服務。查詢過程中沒有人工的干預,411 服務由語音識別和文本語音轉換引擎驅動。在人們教谷歌如何去聽之後,又用了三年才有實現語音命令的可能。

語音識別是谷歌長遠思考的極佳範例——公司並不怕在一個可能成不了商業產品的項目上投資多年。今天,語音識別驅動的產品遍布穀歌。它被用在谷歌搜索應用的輸入,安卓的語音輸入,以及 Google.com。同時它還是 Google Glass 和 Android Wear 的默認輸入界面。

谷歌甚至還在輸入之外的地方使用語音識別。谷歌的語音識別技術被用在了轉述 Youtube 視頻上,它能自動生成字幕供聽障用戶觀看。生成的字幕甚至被谷歌做成了索引,所以你可以搜索某句話在視頻的哪裡說過。語音是許多產品的未來,並且這項長期計劃將谷歌帶入了屈指可數的擁有自家語音識別服務的公司行列。大部分其它的語音識別產品,像蘋果的 Siri 和三星設備,只能使用 Nuance 的語音識別,並且為其支付了授權費。

在計算機聽覺系統設立運行之後,谷歌下一步將把這項策略應用到計算機視覺上。這就是為什麼像 Google Goggles,Google 圖像搜索和 Project Tango 這樣的項目存在的原因。就像 GOOG-411 的那段日子,這些項目還處在早期階段。當谷歌的機器人部門造出了機器人,它會需要看和聽,谷歌的計算機視覺和聽覺項目會給谷歌一個先機。

Ron Amadeo / Ron是Ars Technica的評論編緝,專註於安卓系統和谷歌產品。他總是在追尋新鮮事物,還喜歡拆解事物看看它們到底是怎麼運作的。 @RonAmadeo

via: http://arstechnica.com/gadgets/2016/10/building-android-a-40000-word-history-of-googles-mobile-os/13/

譯者:alim0x 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國