Android-Google手持設(shè)備應(yīng)用程式設(shè)計入門_第1頁
Android-Google手持設(shè)備應(yīng)用程式設(shè)計入門_第2頁
Android-Google手持設(shè)備應(yīng)用程式設(shè)計入門_第3頁
Android-Google手持設(shè)備應(yīng)用程式設(shè)計入門_第4頁
Android-Google手持設(shè)備應(yīng)用程式設(shè)計入門_第5頁
已閱讀5頁,還剩89頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、InstallAndroid安裝 Android 開發(fā)工具Android 提供免費而且跨平臺的整合開發(fā)環(huán)境,只要電腦能連接上網(wǎng)路,我們隨時都能下載相關(guān)工具下來,並開始開發(fā) Android 應(yīng)用程式。 有了輕鬆易用的開發(fā)工具,我們可以把心力專注於如何將想法實現(xiàn)到應(yīng)用程式上。系統(tǒng)需求撰寫 Android 的應(yīng)用程式,需要一套個人電腦系統(tǒng)。至於作業(yè)系統(tǒng)的部份,幾個主流作業(yè)系統(tǒng)都有支援。支援的作業(yè)系統(tǒng)如下: Windows XP 或 Vista Mac OS X 或之後版本 (適用 x86 架構(gòu)的 Intel Mac) Linux (官方於 Ubuntu 6.10 Dapper Drake 上測試)我

2、們需要安裝一些 Android 開發(fā)環(huán)境所需的程式工具,這些工具都是可以免費上網(wǎng)取得的: JDK 5 或 JDK 6你需要安裝 Java 開發(fā)工具 (JDK 5 或 JDK 6)。 只安裝 Java 運行環(huán)境(JRE) 是不夠的,你需要安裝 Java 開發(fā)環(huán)境 (JDK)。 你可以在命令行上輸入 java -version 來查看目前系統(tǒng)上已安裝的 java 版本(java 版本需 1.5)。 要注意的是 Android 與 Java Gnu 編譯器 (gcj) 還不相容。 Eclipse IDE,一個多用途的開發(fā)工具平臺。你可以下載安裝 Eclipse 3.5 (代號 Galileo) 、

3、3.4 (代號 Ganymede) 或 Eclipse 3.3 (代號 Europa) 版。 請注意你選擇的版本需包含 Eclipse Java 開發(fā)工具擴充套件(Java Development Tool Plugin, JDT)。 大多數(shù) Eclipse IDE 包中都已含有 JDT 擴充套件。若對 Eclipse 平臺不熟悉的話,建議直接選擇 for Java Developers版本來下載。 ADT,基於 Eclipse 的 Android 開發(fā)工具擴充套件 (Android Development Tools plugin)。 Android SDK,Android 程式開發(fā)套件,包

4、含 Android 手機模擬器(Emulator)。 其他開發(fā)環(huán)境工具(非必要安裝)o Linux 和 Mac 環(huán)境上需要自動編譯的話可以自行安裝 Apache Ant 或之後版本,Windows 環(huán)境上則需要 Apache Ant 1.7 或之後版本。 o NetBeans、IDEA 等開發(fā)平臺亦有推出自己的 Android 開發(fā)工具,但本書中還是以討論官方基於 Eclipse 平臺的開發(fā)工具為準,其他平臺不予涉及。安裝流程假設(shè)讀者已先安裝了 JDK 5 或 JDK 6。 那麼 Android 的安裝流程可以分為以下五個步驟1. 下載 Eclipse2. 安裝 Eclipse3. 安裝 AD

5、T 擴充套件4. 下載 Android SDK5. 設(shè)定 Android SDK詳細的安裝流程如下:1. 下載 Eclipse首先我們需要下載 Android 開發(fā)時會用到的整合開發(fā)環(huán)境 Eclipse。 目前 Android 應(yīng)用程式只支援使用Java程式語言來編寫 Android 應(yīng)用程式。所以開發(fā)前必須先安裝 Java 開發(fā)套件(Java Development Kit, JDK)。 各平臺的 JDK 可至下載。 Mac OS X 作業(yè)系統(tǒng)則已內(nèi)建 JDK。 安裝好 JDK 後,我們可以前往Eclipse網(wǎng)站下載 Eclipse 這個方便的整合開發(fā)環(huán)境。 下載 Eclipse 時請選Ec

6、lipse IDE for Java Developers或Eclipse IDE for Java EE Developers這兩種版本,只有這兩種版本才會預裝 Eclipse JDT 擴充套件。 範例中所選擇的是Eclipse IDE for Java Developers版本。 下載完同樣先解壓縮到適當目錄下。2. 安裝 EclipseEclipse 不需要安裝,只要確認你的系統(tǒng)上有安裝 Java,即可直接開啟 Eclipse 資料夾,點擊 Eclipse 開始執(zhí)行 Eclipse 整合開發(fā)環(huán)境。 第一次啟動 Eclipse 時會彈出視窗讓你決定預設(shè)的工作目錄。一般使用 Eclipse

7、預設(shè)的工作目錄即可。 進入到 Eclipse IDE 後,不必急著四處觀望。我們先來安裝 Android 開發(fā)工具擴充套件。3. 安裝 ADT 擴充套件我們將在 Eclipse 上 安裝 Android 開發(fā)工具 (ADT)。Eclipse 3.5 版找到螢?zāi)簧戏降倪x單列, 選擇 Help-Install New Softare 選項,這選項會帶出一個新視窗。 選擇Available Software標籤,選擇右方的 Add. (新增網(wǎng)站)按鈕,會彈出一個輸入框。在輸入框中的Location欄位中輸入擴充套件的名稱(Name) ADT 跟網(wǎng)址(URL) ,按下 OK 按鈕離開。Eclipse

8、會花一點時間尋找合適的版本。在視窗中全選項目Developer Tools中的的選項後,按下右方的Install按鈕。按下 Next (下一步)鍵。照著步驟就安裝完成。安裝完會提示需重新啟動 Eclipse,按下 Yes 重新啟動。Eclipse 3.4 版找到螢?zāi)簧戏降倪x單列, 選擇 Help-Software Updates 選項,這選項會帶出一個新視窗。 選擇Available Software標籤,選擇右方的 Add Site. (新增網(wǎng)站)按鈕,會彈出一個輸入框。在輸入框中的Location欄位中輸入網(wǎng)址(URL) , 按下 OK 按鈕離開。Eclipse 會花一點時間尋找合適的版本

9、。在視窗中全選項目Developer Tools中的的選項後,按下右方的Install按鈕。按下 Next (下一步)鍵。照著步驟就安裝完成。安裝完會提示需重新啟動 Eclipse,按下 Yes 重新啟動。Eclipse 3.3 版找到螢?zāi)簧戏降倪x單列, 選擇 Help-Software Updates-Find and Install 選項,這選項會帶出一個新視窗。選擇 Search for new features to install (搜尋新功能供安裝)選項,按下 Next (下一步)鍵。出現(xiàn)設(shè)定畫面。選擇右上角的 New Remote Site (新增遠端網(wǎng)站)按鈕,會彈出一個 Ne

10、w Update Site (新增更新網(wǎng)站)輸入框。在輸入框中輸入擴充套件的名稱(Name) ADT 跟網(wǎng)址(URL) ,按下 OK 按鈕離開。按下 Finish 按紐繼續(xù)下一步。Eclipse 會花一點時間尋找合適的版本。接著我們要做的,就是等 Eclipse 顯示出選項時,勾選合適的版本安裝。安裝完會提示需重新啟動 Eclipse,按下 OK 重新啟動。離線安裝已經(jīng)安裝成功的讀者可以跳過這段。有些讀者因為網(wǎng)路環(huán)境的關(guān)係,無法順利地直接線上安裝 Android 開發(fā)工具。這時我們可以先前往,手動下載最新的開發(fā)工具版本來離線安裝。下載完最新的ADT 擴充套件後,打開 Eclipse 開發(fā)環(huán)境,

11、找到螢?zāi)簧戏降倪x單列, 選擇 Help-Software Updates 選項,這選項會帶出一個新視窗。選擇Available Software標籤,選擇右方的 Add Site. (新增網(wǎng)站)按鈕,會彈出一個輸入框。選擇右上角的Local.按鈕,並選取剛下載的 Android 最新開發(fā)工具檔案,選到之後按下 OK 按鈕離開。 在視窗中全選新出現(xiàn)項目的所有選項後,按下右方的Install按鈕。Eclipse 會花一點時間開始安裝 ADT 擴充套件。4. 下載 Android SDK接著我們要從下載 Android 軟體開發(fā)套件 (Software Development Kit, SDK)。

12、下載下來的 SDK 檔案需要先解壓縮。Windows 平臺需要先另行安裝解壓縮程式,如免費的7-zip解壓縮工具。 解壓縮後會出現(xiàn)一個資料夾。為了之後描述方便,我們將解壓縮後的 Android SDK 檔案夾命名為android_sdk。5. 設(shè)定 Android SDK打開偏好設(shè)定頁面(Preference),選擇 Android 標籤(請確認您已安裝好 ADT 擴充套件,Android 標籤才會出現(xiàn)在偏好設(shè)定頁面中),在 SDK Location 欄位按下 Browse.鍵,選擇剛剛解壓縮完的android_sdk檔案夾所在地,然後按下視窗右下角的套用(Apply) 按鈕。 這樣一來,An

13、droid SDK 就算是設(shè)定好啦。註解:若您安裝過 SDK 1.5 版之前的版本,請先移除後再重新安裝一次 ADT 擴充套件,才能順利設(shè)定新版的 Android SDK。 方法是在螢?zāi)簧戏降倪x單列,選擇Help Software Updates選項,在彈出的視窗上方點選Installed Software頁籤,選擇Android開頭的選項,點選右側(cè)的Uninstall.按鈕移除這些相關(guān)的插件。下一步設(shè)定好 Android SDK 後,我們就擁有了一個完整的 Android 開發(fā)環(huán)境。 我們先來看看 Android SDK 中提供的一些範例,好了解 Android 到底能做些什麼。Manage

14、SDK管理 SDK管理 SDK下載 SDK 組件在選單上選擇Window Android SDK and AVD Manager選項,開啟 Android SDK/AVD 管理工具。在開啟的管理工具視窗中,切換到Installed Packages標籤頁,Installed Packages列表中預設(shè)只裝了Android SDK Tools,不包含目標 SDK。我們需要先自行安裝對應(yīng)的 SDK 組件。切換到Available Packages 標籤頁,開始裝目標 SDK。點選預設(shè)的網(wǎng)址,可以看到目前可用的目標 SDK、文件、Add-On,要完成本書中範例,只要勾選對應(yīng)版本的目標 SDK、文件、

15、Add-On,然後按下Install Selected按鈕即可。在下一個視窗中可確認剛勾選預備要安裝的 SDK 組件。勾選Accept All選項後,按下Install Accepted按鈕即開始自動下載並安裝。在安裝完成後,切換到Installed Packages標籤頁,可以看到剛剛勾選的 SDK 組件都已經(jīng)安裝到開發(fā)環(huán)境中。刪除 SDK 組件經(jīng)過幾次 Android 版本升級後,我們的列表中可能會包含許多舊版本的 SDK。這時可以透過選取列表中的組件,點選下方的Delete.按鈕來刪除這些過時的組件。我們隨時還可以回到管理工具的Available Packages標籤頁,把組件下載回來。

16、安裝好 SDK 組件後,我們就可以開始來熟悉開發(fā)環(huán)境了。OpenProject開啟現(xiàn)有專案開啟專案我們回到 Eclipse 環(huán)境來。在螢?zāi)簧戏降倪x單列上,選擇File-New-Project,會彈出New Project對話視窗。 Eclipse 是通用的編輯環(huán)境,可根據(jù)你所安裝的不同擴充套件而支援許多種類的專案。 點擊 Android 資料夾下的Android Project,會開啟New Android Project對話視窗。我們將開啟SDK 組件中提供的 ApiDemos 範例。在New Android Project對話視窗中,點選 Browse.按鈕以選擇開啟已經(jīng)存在的專案(Cre

17、ate project from existing source)。我們在此選擇位於android_sdk/platforms/android-2.0/samples目錄中的 Android 應(yīng)用程式專案 (android_sdk/platforms/android-2.0/samples/ApiDemos)。當我們選擇了現(xiàn)存的範例程式專案時,New Android Project對話視窗中的諸如專案名稱(Project Name)與屬性等內(nèi)容都將被自動填寫好。這時我們可以按下 Finish按鈕,完成從現(xiàn)存專案新增專案到 Eclipse 環(huán)境的動作。匯入專案如果你的程式專案已位於工作環(huán)境(Wo

18、rkSpace)資料夾下,想使用上述方法開啟專案時,會得到欲開啟的資料夾已在工作目錄下的警告。因此我們得用另一個方法:匯入專案。在螢?zāi)簧戏降倪x單列上,選擇File-Import選項,會跳出Import視窗。選擇General-Existing Projects into WorkSpace項目,然後按下Next按鈕帶到新一個畫面。在Select Root Directory欄位旁,按下右方的Browse.按鈕,選擇對應(yīng)的專案。選擇好後,按下Finish按鈕完成從現(xiàn)存在工作環(huán)境(WorkSpace)資料夾下的專案匯入到 Eclipse 環(huán)境的動作。不同 SDK 版本的範例專案會放在android

19、_sdk/platforms/android-版本/samples目錄中,請自行根據(jù)要開發(fā)的版本來選擇範例。修復專案完成新增程式專案到 Eclipse 後,我們可以在左側(cè)的Package Explorer中找到我們新增的專案。如果發(fā)現(xiàn)開啟後的資料夾圖示上有個小小的黃色驚嘆號,表示這個專案匯入後還有些問題,我們可以使用ADT內(nèi)建的功能來試著修復專案屬性。 在Package Explorer的 ApiDemos 專案檔案夾圖示上點選右鍵,從Android Tools選單中選擇修復專案屬性(Fix Project Properties)。 (Android Tools-Fix Project Pro

20、perties)如果發(fā)現(xiàn)開啟後的資料夾圖示上有個小小的紅色叉號,表示這個專案開啟/匯入後遇到了無法編譯的問題。最常見的也是與無法正常生成gen目錄相關(guān)的問題。一般簡單的解決方式是打開專案中任一 XML 檔案(如AndroidManifest.xml 或是res目錄下附檔名為 .xml 的檔案),改變一下內(nèi)容(如在檔案中多按一個空格)後存檔,這時開發(fā)工具會自動編譯生成gen目錄中新的內(nèi)容。這樣無法編譯的問題往往就解決了。如何修改 XML 檔案在後面章節(jié)中會提到。切換 SDK 版本Android 在 SDK 1.5 版之後引入了支援多個版本 SDK 與模擬器的新特性,讓我們得以透過修改屬性設(shè)定畫面

21、的設(shè)定,來切換用來編譯與運行這些專案的目標 SDK 版本。在Navigator的ApiDemos專案檔案夾圖示上點選右鍵,選擇properties選項,會開啟專案屬性設(shè)定畫面。在設(shè)定畫面中先選擇左方的 Android 標籤,選擇後會出現(xiàn)可勾選的Project Build Target選單。在選單中選擇適當?shù)哪繕税姹荆x擇好之後按下 OK 結(jié)束設(shè)定畫面,這時專案就已經(jīng)切換成可使用目標版本編譯的狀態(tài)了。PlayEmulator操作 Android 虛擬機器使用 Android 虛擬機器我們已經(jīng)透過Eclipse開發(fā)環(huán)境,開啟了ApiDemos專案。本章將講解如何設(shè)定和操作 Android 虛擬機器

22、。設(shè)定 Android 虛擬機器現(xiàn)在我們還不忙著開始寫程式,先花點時間,來看看怎麼在開發(fā)環(huán)境中,透過Android 虛擬機器來執(zhí)行應(yīng)用程式吧。由於在剛開始開發(fā)時,我們手邊並不一定已擁有 Android 設(shè)備。因此 Android 開發(fā)工具亦提供了相當強大的模擬器,能讓我們自由配置,模擬各種硬體規(guī)格的設(shè)備。在 Android 中一律把 Android 模擬器稱作Android 虛擬機器(Android Virtual Device),簡寫為AVD。Android 軟體開發(fā)套件(SDK) 1.5 以上的版本提供了支援不同目標版本虛擬機器的功能,在使用虛擬機器之前,必須先建立一個虛擬機器後才可在 E

23、clipse 開發(fā)環(huán)境中使用。SDK 中提供了一個android命令行工具(在 android-sdk/tools 中),可以用來建立新專案或是管理虛擬機器。在此我們使用android命令行工具來新建立一個虛擬機器。列出虛擬機器類型首先,把android-sdk/tools 目錄加入系統(tǒng)路徑,我們以後就可以在任何地方使用android-sdk/tools 目錄下的各種命令。在 Windows 2000、XP、2003、Windows 7 這些作業(yè)系統(tǒng)裡,點選控制臺 系統(tǒng) 進階 環(huán)境變數(shù)。在系統(tǒng)變數(shù)(S)欄中,選取PATH變數(shù)名稱後,再點選編輯(I)按鈕。再此假設(shè)您安裝 Android SDK

24、的路徑是C:android-sdktools,接著在彈出的視窗中將;C:android-sdktools(注意要以分號隔開)這字串添在原本的字串之後,按下確定後重新啟動作業(yè)系統(tǒng)。重開系統(tǒng)後選擇開始 執(zhí)行,在彈出的輸入框中輸入cmd,即可開啟命令行工具並繼續(xù)以下的動作?;蚴悄部梢灾苯哟蜷_命令行,進入android-sdk/tools 目錄,輸入以下命令:$ android list targets在沒有將 Android SDK 加入路徑的情況下,在 Linux 或 Mac 環(huán)境中要輸入$ ./android list targets螢?zāi)簧蠒谐鏊兄г奶摂M機器類型$ android lis

25、t targetsAvailable Android targets:id: 1 Name: Android Type: Platform API level: 2 Skins: HVGA (default), HVGA-L, HVGA-P, QVGA-L, QVGA-Pid: 2 Name: Android Type: Platform API level: 3 Skins: HVGA (default), HVGA-L, HVGA-P, QVGA-L, QVGA-Pid: 3 Name: Google APIs Type: Add-On Vendor: Google Inc. Descri

26、ption: Android + Google APIs Based on Android (API level 3) Libraries: * com.google.android.maps (maps.jar) API for Google Maps Skins: HVGA (default), HVGA-L, QVGA-P, HVGA-P, QVGA-L在這邊列出了三種虛擬機器類型。分別是編號(id)為 1、2 的 Android 1.1、1.5 虛擬機器,與編號(id)為 3 的Google APIs,Google 把自己提供的應(yīng)用程式(如 Google Map)放在Google AP

27、Is這個虛擬機器類型中,因此要開發(fā) Google Map 等 Google 專屬應(yīng)用程式時,就必須先建立編號 3 這類型的虛擬機器,稍後才能在適當?shù)奶摂M機器上作驗證。建立虛擬機器我們現(xiàn)在來建立一個基本的 Android SDK 2.0 虛擬機器。在命令行中輸入以下命令:$ android create avd -target 1 -name eclair這段命令的意思是:使用android create avd命令來建立一個新的虛擬機器, -target 1參數(shù)的意思是這個虛擬機器使用 id 為 1 的 SDK 套件(Android 1.5),-name eclair參數(shù)的意思是將這個建立的虛

28、擬機器命名為eclair。產(chǎn)生的結(jié)果如下$ android create avd -target 1 -name eclairAndroid is a basic Android platform.Do you wish to create a custom hardware profile noCreated AVD cupcake based on Android 列出已建立的虛擬機器我們可以使用 Android命令行工具提供的list avd命令,來列出所有我們已經(jīng)建立的模擬器。在命令行中輸入以下命令:$ android list avd產(chǎn)生的結(jié)果如下:$ android list av

29、dAvailable Android Virtual Devices: Name: eclair Path: /Users/mac/.android/avd/cupcake.avd Target: Android (API level 5) Skin: HVGA使用 android list avd命令看到有輸出,即表示已成功建立虛擬機器,可以回到 Eclipse 環(huán)境來,設(shè)定執(zhí)行應(yīng)用程式專案所需的環(huán)境參數(shù)了。設(shè)定環(huán)境參數(shù)要執(zhí)行 ApiDemos 程式前,我們得在開發(fā)環(huán)境中,事先設(shè)定好一些用來執(zhí)行 ApiDemos 程式的環(huán)境參數(shù)。 以後使用其他程式專案時,我們也能用同樣的方式,讓這些程式在我

30、們的開發(fā)環(huán)境中運行。首先,我們透過選單列上的Run(執(zhí)行)選單,選擇開啟執(zhí)行參數(shù)設(shè)定(Run- Debug Configurations.) 進入運行環(huán)境參數(shù)設(shè)定畫面。進入設(shè)定畫面後,在視窗左側(cè)會有一整排 Eclipse 支援的運行設(shè)定,我們從中找到 Android Application(Android 應(yīng)用程式)項目,按下滑鼠右鍵,點選 New(新增)選項。選擇 New 選項後,在Android Application項目下方會多出一筆執(zhí)行項目。我們可以在 Name 欄位上輸入一個代表這個環(huán)境參數(shù)的名稱,在此我們輸入與專案名稱相同的ApiDemos。在Project欄位右方,點選Brows

31、e.按鈕,開啟專案選擇(Project Selection)視窗,選擇ApiDemos專案並點選OK按鈕,以選擇要執(zhí)行的專案。在 Launch Action 選單中,確認預設(shè)選擇的是Launch Default Activity。至此我們就完成了模擬器環(huán)境參數(shù)的設(shè)定。 點選右下角的Debug按鈕,Eclipse 就會啟動 Android 虛擬機器。小技巧:在選單列中,也可以選擇設(shè)定Run Configuration.選項。這時我們得到的是一個幾乎完全相同的環(huán)境參數(shù)設(shè)定畫面,只是右下角的Debug按鈕變成了Run按鈕。Debug與Run模式的環(huán)境參數(shù)設(shè)定可以共用,差別在於Debug模式下可以使用

32、在之後章節(jié)中會介紹的 logd,來顯示一些開發(fā)時所需的額外訊息。再次啟動 Android 虛擬機器當我們設(shè)定好之後,以後碰到要再次啟動虛擬機器的情況時,只要在螢?zāi)蛔笊辖堑腄ebug或Run圖示右側(cè)小箭頭上按一下,從彈出的選單中選擇剛剛設(shè)定的環(huán)境參數(shù)名稱,虛擬機器即開始執(zhí)行,並安裝好我們所指定的專案應(yīng)用程式。操作虛擬機器改變虛擬機器外觀在建立虛擬機器的時候,我們可以透過skin欄位來選擇預設(shè)的虛擬機器外觀。skin欄位中會列出目標(Target)版本支援的所有外觀。HVGA(解析度 480x320)、QVGA(解析度 320x240)等分別代表著各種不同畫面的解析度在命令列上執(zhí)行android

33、list targets命令後,我們可以看到螢?zāi)簧狭谐鏊兄г哪M器類型。舉我們剛才建立過的(id 1)虛擬機器為例,列出訊息如下:id: 1 Name: Android Type: Platform API level: 5 Skins: HVGA (default), QVGA, WQVGA400, WQVGA432, WVGA800, WVGA854其中 Skins 欄位中會列出所有支援的模擬器佈景,預設(shè)有多種畫面配置選項可選擇。要建立QVGA模式的模擬器,則在前一節(jié)android create avd命令後,附加上-skin QVGA選項即可。要將預設(shè)的HVGA 直式顯示改為橫式,則

34、可以透過使用快速鍵,直接切換螢?zāi)粊磉_成。切換螢?zāi)环较蛟?Windows 作業(yè)系統(tǒng)上按下 Ctrl和F12鍵 ,或是在 Mac OS X 作業(yè)系統(tǒng)上同時按下fn 和7鍵,螢?zāi)痪蜁念A設(shè)的直式顯示改成橫式顯示,再按一次則切換回原來的直式顯示。移除程式我們已經(jīng)順利地啟動了虛擬機器,那麼,該怎麼移除安裝到虛擬機器上的程式哩?Android SDK 中提供一個 adb (Android Debugger) 命令行工具 (在 android-sdk/tools 中),我們可以用裡面的 shell 工具連上虛擬機器來移除應(yīng)用程式。在某些平臺上,這些動作可能需要擁有 root 權(quán)限才能執(zhí)行。首先打開命令列,啟

35、動 adb shell $ adb shell接著切換到 data/app 目錄中 $ cd data/app/使用 ls 命令(等同 windows 上命令行的 dir 命令)來檢視檔案列表 # ls com.example.android.apis.apk接著使用 rm 命令來刪除 ApiDemos 應(yīng)用程式 # ls移除虛擬機器我們可以使用android list avd命令來列出所有的虛擬機器$ android list avdAvailable Android Virtual Devices: Name: eclair Path: /Users/mac/.android/avd/cu

36、pcake.avd Target: Android (API level 5) Skin: HVGA表示現(xiàn)在系統(tǒng)中有一個名為 eclair 的虛擬機器。 我們可以使用android delete avd -name eclair命令來刪除名稱為eclair的虛擬機器。$ android delete avd -name eclairAVD eclair deleted.刪除後再次執(zhí)行android list avd命令,得到的結(jié)果為$ android list avdAvailable Android Virtual Devices:表示系統(tǒng)中已經(jīng)不存在任何模擬器,我們真的已經(jīng)將虛擬機器刪除了

37、。ReadSource建立一個 Android 程式在前幾章我們已經(jīng)學到怎麼開啟現(xiàn)有的專案,也導覽過了整個模擬器的設(shè)定流程。 現(xiàn)在我們從設(shè)計一個簡單實用的身高體重指數(shù)計算(BMI)應(yīng)用程式開始,學習設(shè)計一個 Android 應(yīng)用程式所需的基礎(chǔ)。維基百科上這麼介紹 BMI 身高體重指數(shù):身高體重指數(shù)(又稱身體質(zhì)量指數(shù),英文為Body Mass Index,簡稱BMI)是一個計算值。.當我們需要比較及分析一個人的體重對於不同高度的人所帶來的健康影響時,BMI值是一個中立而可靠的指標。 簡而言之,我們要設(shè)計的程式就是允許輸入身高體重,按下計算 BMI鍵後就在螢?zāi)簧巷@示 BMI 值,並彈出你應(yīng)該節(jié)食囉

38、、或你應(yīng)該多吃點.等健康建議。健康建議的判斷: 只要 BMI 值超過 25 時就算偏胖、BMI 值低於 20 就算偏瘦。 判斷寫得很簡單。畢竟我們要學習的關(guān)鍵知識,不是在於 BMI 值的算法或健康建議的內(nèi)容,而是在於 Android 程式的運作方式。參考資源我們這就先從建立一個新的程式專案開始吧。建立新程式專案首先,我們照前面章節(jié)的教學,建立一個新的程式專案。並將新專案名稱命名為 BMI。 在內(nèi)容欄裡,我們選擇在工作區(qū)域中建立新專案(Create new project in workspace)。 這時,如果在選擇欄取消掉勾選使用預設(shè)目錄(Use default location) 選項,我

39、們就可以切換儲存專案的資料夾。 大部分的時候我們並不需去改動這個選項,而是直接使用預設(shè)的資料夾。前面章節(jié)中都是開啟現(xiàn)有的專案,因此那些專案屬性 (Properties) 等內(nèi)容都被自動填寫好了。這章中要從無到有新建一個專案,因此我們必須自行填寫專案相關(guān)的屬性。在此對New Android Project 對話框中出現(xiàn)的這些欄位作些簡單的說明:名稱描述Project Name包含這個項目的資料夾的名稱Application Name顯示在應(yīng)用程式上的標題Package Name套件(Package)名稱,JAVA 的習慣是用套件名稱來區(qū)分不同的類別(class)。依照專案的不同,我們會起不同的路

40、徑名稱。Create Activity使否建立這個是項目的主要類別,勾選後可以指定這個類別的名稱。這個類別是一個 Activity 類別的子類別。我們可以在Activity中啟動程式和控制程式流程,或是根據(jù)需要控制螢?zāi)?、界面。Build Target選擇用來編譯專案的 SDK 版本。 當選定了 Build Target 後,開發(fā)工具會在 Min SDK Version 欄位中自動填入對應(yīng)的值Min SDK Version本應(yīng)用程式所支援的最低 SDK 版本代號。我們在欄位中分別填入以下的值:名稱值Project NameBMIApplication NameBMIPackage NameCre

41、ate ActivityBmiMin SDK Version5(自動填入)填好值後按下Finish 按鈕,就建立好新專案了。注意 Package Name 的設(shè)定,必須至少由兩個部分所構(gòu)成,例如:com.android。Activity Name是指定用來產(chǎn)生預設(shè) java 程式碼的文件名稱,與文件中預設(shè) Activity 類別 (class) 的名稱。依照 java 語言的命名習慣,Activity Name最好採用開頭大寫的形式?;氐?Eclipse 主畫面,我們注意到在左側(cè) Package Explorer 視窗中已順利新增加了一個 BMI 目錄。程式專案架構(gòu)乍看之下,Android 插

42、件已幫我們建立了不少檔案。 檢視新建立的 BMI 檔案夾中的內(nèi)容,我們可以將一個 Android 應(yīng)用程式基本的檔案結(jié)構(gòu)歸納成如下:我們來看看 Android 應(yīng)用程式的基本檔案結(jié)構(gòu),以及各自所負責的內(nèi)容。src/ 原始碼(source)目錄src 目錄中包含了一個 Android 應(yīng)用程式中所需的各個程式碼檔案。這些檔案被包在對應(yīng) package 的子目錄下。(如本章的 BMI 例子中,子目錄指的就是 /src/com/demo/android/bmi/)src 目錄中比較關(guān)鍵的程式有:1. Bmi.java 這個檔案的檔名會隨著你在建立一個新的程式專案畫面中所填入Create Activi

43、ty欄位值的不同而改變。這是新程式專案中的主要程式區(qū)塊。我們開發(fā) Android 程式的多數(shù)時間,都是在 src 目錄下和 Android 打交道。gen/ 自動生成(Generate)目錄gen 目錄中存放所有自動生成的檔案。gen 目錄中最關(guān)鍵的程式就是 R.java 檔。1. R.java 這個檔是自動產(chǎn)生的。會由 ADT 插件自動根據(jù)你放入 res 目錄的 XML 描述文件、圖像等資源,同步更新修改 R.java 這個中介檔案。所有的 Android 程式中都會有以 R.java 為名的這個檔案,你完全不需要,也應(yīng)避免手工修改 R.java 這個檔案。R.java 中自動產(chǎn)生的 R 類

44、別就像是個字典一樣,包含了使用者介面、圖像、字串等各式的資源與相應(yīng)的編號(id)。Android 應(yīng)用程式中很多時候會需要透過 R 類別調(diào)用資源。 編譯時編譯器也會查看這個資源列表,沒有使用到的資源就不會編譯進去,為手機應(yīng)用程式節(jié)省不必要佔用的空間。res/ 資源(Resource)目錄res 目錄中存放所有程式中用到的資源檔案。資源檔案指的是資料檔案,或編譯時會被轉(zhuǎn)換成程式一部分的 XML 描述檔。Android 針對放在 res 目錄下的不同子目錄的資源,會有各自不同處理方式。因此我們寫程式時,最好能搞清楚各目錄下分別可放置的內(nèi)容。res/ 中的程式:3. layout/ 版面配置(lay

45、out)目錄 layout目錄包含所有使用 XML 格式的介面描述檔。layout 中的 XML 介面描述檔就像寫網(wǎng)頁時用到的 HTML 檔案一樣,用來描述螢?zāi)簧系陌婷婢幣排c使用的介面元件。XML 介面描述檔描述的內(nèi)容可以是整張螢?zāi)?,也可以只描述一部分的介?例如描述用來產(chǎn)生對話框的介面元件)。雖然你也能直接通過 Java 來建立使用者介面,不過透過 XML 描述檔來建立使用者介面相對更簡單,架構(gòu)也更清晰,以後維護時更容易釐清問題。要使用這些介面元件,應(yīng)透過 R.java 檔中自動產(chǎn)生的 R 類別來調(diào)用。4. values/ 參數(shù)值(value)目錄 values 目錄包含所有使用 XML 格

46、式的參數(shù)值描述檔,可以在此添加一些額外的資源如字串(很常用)、顏色、風格等。使用時也是透過 R 類別來調(diào)用。Android 功能清單5.AndroidManifest.xmlAndroidManifest.xml 是 Android 程式的功能清單,應(yīng)用程式在這裡列出該程式所提供的功能。當應(yīng)用程式開啟時,會提供諸如內(nèi)容提供者(ContentProvider)、處理的資料類型、實際運行的類別、跨應(yīng)用程式的資訊等等訊息。 你可以在此指定你的應(yīng)用程式會使用到的服務(wù)(諸如電話功能、網(wǎng)路功能、GPS功能等)。 當你新增一個頁面行為類別 (Activity) 時,你也需要先在此註冊這個新增的 Activi

47、ty 類別後,才能順利調(diào)用。AndroidUI描述使用者介面將一份創(chuàng)意落實到可執(zhí)行的應(yīng)用程式,背後需要的是從閱讀與寫作程式碼中累積的經(jīng)驗,並有堅持理念、直到完成的耐心。表達使用者介面我們可以先用前幾章教的方法設(shè)定並執(zhí)行模擬器,看看模擬器運作後的結(jié)果。我們看到一個文字欄位,上面有一串文字 Hello World, Bmi!。這就是 Android 預設(shè)程式架構(gòu)的範例囉。由於才剛開始實際接觸到 Android 應(yīng)用程式,我們先從簡單的開始:這一節(jié)中,我們的目標是將 Hello World, Bmi! 換成別的文字。那麼,Hello World, Bmi!,這串字串藏在哪裡呢?先打開 res/lay

48、out/main.xml 1 2 7 12 原來Hello World, Bmi!字串就藏在res/layout/main.xml這個檔案的第 10 行中。我們只要簡單地將第 10 行修改成如下android:text=Hello World, Bmi!”再執(zhí)行一次模擬器,就可以得到一個相似的應(yīng)用程式,只是內(nèi)文變成了我們剛剛修改的內(nèi)容。既然找到了Hello World, Bmi!字串,我們就試著將android:text屬性值從Hello World, Bmi!改成哈囉,BMI,然後執(zhí)行看看吧。android:text=哈囉,BMI結(jié)果發(fā)現(xiàn) Android 模擬器中文嘛也通,字型也相當漂亮。要

49、開始學習 Android 應(yīng)用程式確實很簡單吧?不過為了顯示Hello World, Bmi,也用到了許多程式碼。到底這些程式碼有什麼含意呢?我們馬上來學習 main.xml這個 XML 介面描述檔的內(nèi)涵吧。Android 平臺裡,使用者介面都是透過 ViewGroup 或 View 類別來顯示。ViewGroup 和 View 是 Android 平臺上最基本的使用者介面表達單元。我們可以透過程式直接呼叫的方法,調(diào)用描繪使用者介面,將螢?zāi)簧巷@示的介面元素,與構(gòu)成應(yīng)用程式主體的程式邏輯,混合在一起編寫。或是,也可以將介面顯示與程式邏輯分離,照著 Android 提供的這個較優(yōu)雅的方式,使用 X

50、ML 描述檔,來描述介面元件的組織。講解我們看到的Hello World, Bmi就包含在main.xml 這個檔案中。 接著,我們就直接分部份來講解這個main.xml 檔案裡的內(nèi)容:第 1 行 XML (Extensible Markup Language) 是一種標記描述語言,不管是語法還是看起來的樣子,都相當類似網(wǎng)頁所使用的 HTML 標記語言。XML 被廣泛地運用在 Java 程式的設(shè)定中。main.xml 文件裡,第一行是每個 XML 描述檔固定的開頭內(nèi)容,用來指示這個文字檔案是以 XML格式描述的。第 2, 6 與 12 行 LinearLayout xmlns:android=

51、接著我們看到第一個標籤,與 HTML 網(wǎng)頁標籤相當類似。 線性版面配置(LinearLayout)標籤,使用了兩個LinearLayout標籤,來表示一個介面元件的區(qū)塊。後頭的標籤前加上一個/符號來表示結(jié)束標籤。線性版面配置 所指的是包含在 LinearLayout 標籤中,所有元件的配置方式,是將一個接一個元件由上而下排隊排下來的意思。 xmlns:android=xmlns 開頭的這串敘述,是用來宣告這個 XML 描述檔案的的名稱空間(NameSpace),後面接的URL(網(wǎng)址),表示這個描述檔案會參照到 Android 名稱空間提供的定義。 所有 Android 版面配置檔案的最外層標籤

52、中,都必須包含這個屬性。注意標籤需要兩兩對稱。一個標籤在一串敘述的前頭,另一個標籤在敘述的末尾。 如果你修改過的標籤沒有閉合(忘了加 等符號),Eclipse 畫面上也會出現(xiàn)小小的警示符號來提醒你。第 3-5 行 android:orientation=vertical android:layout_width=fill_parent android:layout_height=fill_parent這些包含在標籤中的敘述被稱為LinearLayout標籤的屬性。Android 應(yīng)用程式在 layout 目錄中的標籤,大多數(shù)的屬性前都有一個android:前綴。同一個介面元件的屬性之間,是以空

53、白做區(qū)隔,因此事實上你也能將多個屬性寫在同一行。當然,將屬性排成多行更易於閱讀。我們應(yīng)該保持這個好習慣。介面元件都有許多共同的屬性,例如介面元件的長,寬度設(shè)定屬性。Android 介面元件的寬度、長度設(shè)定屬性分別叫做android:layout_width、android:layout_height。兩個都設(shè)定為 fill_parent參數(shù)值。fill_parent 如其名,所表達的的意思就是填滿整個上層元件。預設(shè) LinearLayout 介面元件就會佔滿整個螢?zāi)豢臻g。介面元件彼此間也會有一些不同的屬性,例如 LinearLayout(線性版面配置) 標籤的android:orientation(版面走向) 屬性。在此填入 vertical (垂直)屬性值,表示這個介面的版面配置方式是從上而下垂直地排列其內(nèi)含的介面元件。android.view.ViewGroup

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論