天天看點

《Android開發秘籍(第2版)》——第1.7節軟體開發工具包(SDK)

本節書摘來自異步社群《android開發秘籍(第2版)》一書中的第1章,第1.7節軟體開發工具包(sdk),作者 【美】ronan schwarz , phil dutson , james steele , nelson to,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視

1.7 軟體開發工具包(sdk)

android開發秘籍(第2版)

android sdk由平台、工具和示例代碼以及開發android應用所需的文檔組成。它被建構成為java開發工具包的附加元件,并包含一個面向eclipse內建開發環境(ide)的內建插件。

1.7.1 安裝和更新

這個包是一個預先配置好的zip壓縮檔案,我們需要做的全部事情就是将包解壓,并啟動eclipse程式。啟動後,程式将詢問建立工作區(workspace)的路徑,標明後,将出現一個界面,可以幫助我們建立新工程或者學習關于android開發的更多知識。

對于那些不願下載下傳整個包,而甯願隻安裝他們需要部分的開發者而言,下面的概要給出的一般過程闡明了最常見的安裝步驟。應當在開發環境的主機上執行這些步驟。

(1)安裝java開發包(例如,要使用android 2.1或更高版本,需安裝jdk 6.0;jdk 5.0則是android開發所要求的最低版本)。

(2)安裝eclipse經典版(例如4.2.1版)。在windows下,隻需将下載下傳包解壓到某個正确路徑就可使用。

(3)安裝android sdk初始包(starter package),比如r21版。在windows下,同樣隻需将下載下傳包解壓到一定的路徑即可使用。

(5)在eclipse中選擇window→preferences...(在mac系統下,則選擇eclipse→preferences),然後選擇android菜單項。找到你解壓android sdk的路徑并選擇apply。

(6)在eclipse中選擇window→android sdk and avd manager→available packages菜單項,并選擇需要安裝的api(例如android sdk文檔、sdk平台、google api以及api 17)。

(7)仍然是在android sdk and avd manager菜單中,建立一個android虛拟裝置運作模拟器,或者安裝usb驅動在連接配接到電腦上的真實手機上運作應用。

(8)在eclipse中選擇run→run configurations...為每個android應用程式建立一套新的運作配置(或者與此類似地,建立一套調試配置)。android junit測試也可以在此處進行配置。

至此,開發環境應該配置成便于android應用的開發,并讓其在模拟器或真實的android裝置上運作了。對sdk進行版本更新也是件容易事,隻要在eclipse中選擇help→software updates...,然後挑選适當版本即可。

1.7.2 軟體特性和api級别

android系統會定期推出新特性,或是進行功能強化(如改善運作效率),又或是修複bug。作業系統改進的一個主要動力是新裝置上硬體性能的提升。事實上,大多數作業系統版本都是伴随着新硬體的推出而釋出的(比如eclair版3的釋出是伴随着droid裝置的推出)。

一些舊的android裝置無法支援新版本系統的要求,是以不能随着新作業系統的釋出而更新。這就帶來了體驗各不相同的使用者群體。開發者必須檢查裝置的性能,或者至少把所需的硬體特性告知使用者。這項工作隻需通過檢查一個簡單的數字——api版本号——即可完成。附錄d給出了android不同版本及其變動的清單。

如今android的釋出符合一個大緻的時間規律,每6~9個月會更新一次。盡管可以進行無線(over-the-air)更新,但這種方式有一定難度,是以不太被采用。而硬體制造商也希望保持一定的穩定性,這意味着市面上的主流産品并不一定會馬上進行更新。但是,每當一個新版本釋出,其帶來的新特性對開發者而言是值得一試的。

1.7.3 用模拟器或android裝置進行調試

模拟器會在開發用的電腦上開啟一個看上去與真實android手機類似的視窗,并執行真實的arm指令。注意,模拟器的初始化啟動過程比較緩慢,即便在高配置的電腦上也是如此。盡管有辦法對模拟器進行配置,使其模拟真實android裝置的多個方面,如電話呼入、有限的資料傳輸率、螢幕方向的改變等,但另一些特性(諸如傳感器、音頻和視訊)還是有别于真實裝置的。近期模拟器增加了利用主控端gpu的能力,這有助于提升模拟器上産生視覺效果和圖形變換的速度。對于那些開發者無法擷取的裝置,用模拟器對它們進行基本功能驗證不失為一種好辦法。例如,可以對平闆電腦的螢幕尺寸進行模拟,而無需真正購買一台。

要注意,必須事先建立一個目标虛拟裝置,才能正确地運作模拟器。eclipse提供了一種很好的方式來管理android虛拟裝置(avd)。表1-4給出了模拟器的各種功能所對應的快捷鍵的速查清單。

《Android開發秘籍(第2版)》——第1.7節軟體開發工具包(SDK)
《Android開發秘籍(第2版)》——第1.7節軟體開發工具包(SDK)

一般而言,首次測試最好使用android手機來完成。這樣可確定功能的完整性,還可以檢驗模拟器無法全完模拟的實時問題。要想把android裝置作為開發者平台,隻需将其用自帶的usb線與電腦連接配接,并確定usb驅動被成功檢測出來(mac系統中檢測過程會自動完成;windows系統的驅動包含在sdk裡;linux使用者則要參考google提供的相關頁面)。

為啟用開發者功能,要對android裝置上的某些設定進行調整。在主螢幕下分别選擇menu(菜單)→settings(設定)→applications(應用程式)→ unknown sources(未知來源)和menu(菜單)→ settings(設定)→ applications(應用程式)→ development(開發)→ usb debugging(usb調試)4,進而允許通過usb線安裝應用程式。有關android調試的更多詳細内容參見第16章。

1.7.4 使用android調試橋

通常通過指令行通路android裝置比較友善,隻要用usb線将裝置連接配接到電腦即可。sdk自帶的android調試橋(android debug bridge,adb)可用于通路android裝置。例如,想要在運作linux的計算機上登入到android裝置,可鍵入如下指令:

這些都是最為常用的指令,另外還有其他很多指令,其中一些将在第16章介紹。

1.7.5 簽名和釋出

若想應用程式被google play接受,要對其進行簽名。要做到這一點,首先需要生成一個私鑰,并對其進行妥善儲存。然後要在釋出模式下用私鑰對應用程式進行打包。對應用程式進行更新時,要使用相同的私鑰進行簽名,以保證更新對使用者是透明的。

eclipse可以自動完成這些工作。隻需右擊要簽名的項目,并選擇export... → export android application開始打包工作。可以使用一個密碼來生成私鑰,該私鑰會被儲存起來,以備将來的應用程式和更新使用。接下來,通過菜單繼續完成apk檔案的建立。apk檔案是android項目在釋出模式下打包、并用私鑰簽了名的版本,它已可以被釋出到google play上。

1android development tools bundle,可譯為android開發工具包。——譯者注

2截至翻譯完成時,adt bundle并無官方中文版,是以對與開發環境互動時用到的各種指令和選項暫不翻譯,保持英文原文。一部分感覺有必要的地方用括号注明中文含義。——譯者注

32009年5月以後釋出的android版本,除數字版本号外,還另有一個别名。且到目前為止,基本都用某種甜點的名字來命名。這裡的eclair即是一種法式甜點,可譯為“閃電泡芙”。關于android各個系統版本的詳細情況可參見附錄d。——譯者注

4因android版本差異,上述兩個功能選項可能并不在作者給出的位置。比如,在譯者的4.0.4版系統中,前者位于settings(設定)→security(安全)→unknown sources(未知來源),後者則位于settings→developer options(開發人員選項)→usb debugging(usb調試)。——譯者注`

繼續閱讀