深度剖析Android 手機(jī)性能
Google于2007年11月5日宣布發(fā)布Android 手機(jī),這款手機(jī)是基于Linux內(nèi)核的一款操作系統(tǒng),谷歌將繼續(xù)努力,讓這些服務(wù)變得更好,同時(shí)也將添加更有吸引力的特性、應(yīng)用和服務(wù)。
但是, Android 手機(jī)全面的計(jì)算服務(wù)和豐富的功能支持完全有能力擴(kuò)展到移動(dòng)電話市場以外。Android 也可以用于其他的平臺(tái)和應(yīng)用程序。在本文中,閱讀對(duì) Android 平臺(tái)的簡介,并學(xué)習(xí)如何編寫基本的 Android 應(yīng)用程序。
黑莓和 iPhone 都提供了受歡迎的、高容量的移動(dòng)平臺(tái),但是卻分別針對(duì)兩個(gè)不同的消費(fèi)群體。黑莓是企業(yè)業(yè)務(wù)用戶的不二選擇。但是,作為一種消費(fèi)設(shè)備,它在易用性和 “新奇特性” 方面難以和 iPhone 抗衡。Android 則是一個(gè)年輕的、有待開發(fā)的平臺(tái),它有潛力同時(shí)涵蓋移動(dòng)電話的兩個(gè)不同消費(fèi)群體,甚至可能縮小工作和娛樂之間的差別
如今,很多基于網(wǎng)絡(luò)或有網(wǎng)絡(luò)支持的設(shè)備都運(yùn)行某種 Linux 內(nèi)核。這是一種可靠的平臺(tái):可經(jīng)濟(jì)有效地進(jìn)行部署和提供支持,并且可直接作為面向部署的良好的設(shè)計(jì)方法。這些設(shè)備的 UI 通常是基于 HTML 的,可通過 PC 或 Mac 瀏覽器查看。但并不是每個(gè)設(shè)備都需要通過一個(gè)常規(guī)的計(jì)算設(shè)備來控制。
想象一下傳統(tǒng)的家用電器,例如電爐、微波爐或面包機(jī)。如果您的家用電器由 Android 控制,并且有一個(gè)彩色觸摸屏,會(huì)怎么樣?如果電爐上有一個(gè) Android UI,那么操控者甚至可以烹飪點(diǎn)什么東西。Android 平臺(tái)是 Open Handset Alliance 的成果,Open Handset Alliance 組織由一群共同致力于構(gòu)建更好的移動(dòng)電話的公司組成。
這個(gè)組織由 Google 領(lǐng)導(dǎo),包括移動(dòng)運(yùn)營商、手持設(shè)備制造商、零部件制造商、軟件解決方案和平臺(tái)提供商以及市場營銷公司。從軟件開發(fā)的觀點(diǎn)看,Android 正處在開源領(lǐng)域的中心位置。市場上第一款支持 Android 的手機(jī)是由 HTC 制造并由 T-Mobile 供應(yīng)的 G1。這款設(shè)備從設(shè)想到推出花了大約一年的時(shí)間。
惟一可用的軟件開發(fā)工具是一些實(shí)行增量改進(jìn)的 SDK 發(fā)行版。隨著 G1 發(fā)行日的臨近,Android 團(tuán)隊(duì)發(fā)布了 SDK V1.0,用于這個(gè)新平臺(tái)的應(yīng)用程序也浮出水面。為了鼓勵(lì)創(chuàng)新,Google 舉辦了兩屆 “Android Developer Challenges”,為優(yōu)勝的參賽作品提供數(shù)百萬美金的獎(jiǎng)勵(lì)。
G1 問世幾個(gè)月之后,隨后就發(fā)布了 Android Market,它使用戶可以瀏覽應(yīng)用程序,并且可以將應(yīng)用程序直接下載到他們的手機(jī)上。經(jīng)過大約 18 個(gè)月,一個(gè)新的移動(dòng)平臺(tái)進(jìn)入公眾領(lǐng)域。
Android 包括一個(gè)構(gòu)建在 WebKit 基礎(chǔ)上的可嵌入瀏覽器,iPhone 的 Mobile Safari 瀏覽器同樣也是以 WebKit 為基礎(chǔ)。Android 提供多種連接選項(xiàng),包括 WiFi、藍(lán)牙和通過蜂窩(cellular)連接的無線數(shù)據(jù)傳輸(例如 GPRS、EDGE 和 3G)。
Android 手機(jī)中一項(xiàng)流行的技術(shù)是鏈接到 Google 地圖,以便在應(yīng)用程序中顯示地址。Android 軟件棧還提供對(duì)基于位置的服務(wù)(例如 GPS)和加速計(jì)的支持,不過并不是所有的 Android 設(shè)備都配備了必需的硬件。另外還有攝像支持。
過去,移動(dòng)應(yīng)用程序努力向桌面應(yīng)用程序看齊的兩個(gè)領(lǐng)域分別是圖形/媒體和數(shù)據(jù)存儲(chǔ)方法。Android 通過提供對(duì) 2D 和 3D 圖形的內(nèi)置支持,包括 OpenGL 庫,解決了圖形方面的挑戰(zhàn)。
由于Android 手機(jī)包括流行的開源 SQLite 數(shù)據(jù)庫,因此緩解了數(shù)據(jù)存儲(chǔ)的負(fù)擔(dān)。圖 1 顯示一個(gè)簡化的 Android 軟件層次結(jié)構(gòu)。