官术网_书友最值得收藏!

1.2 基于Android SDK的IDE開發環境

Android的SDK開發環境使用預編譯的系統,開發者可以基于Android的標準平臺API進行應用程序層次的開發。在SDK的開發環境中,還可以使用Eclipse等作為IDE開發環境。

1.2.1 Android IDE開發環境的組成和結構

Android的IDE開發環境需要以下的內容。

JDK環境(Java開發包);

Eclipse集成開發環境;

ADT(Android Development Tools)插件;

Android SDK。

Android SDK在IDE環境中使用的結構如圖1-2所示。

圖1-2 Android SDK在IDE環境中使用的結構

Android的SDK具有Windows、Linux和MAC三種不同版本,其中的基礎映像文件、示例代碼和文檔都是相同的,它們之間的主要差別是主機的工具不同。例如,很多主機運行的工具在Window環境中為.exe文件,而在Linux環境中為Elf可執行程序;很多腳本在Window環境中是.bat批處理腳本,在Linux環境中是shell腳本。

1.2.2 Windows中的Android SDK開發環境安裝

1.安裝JDK基本Java環境

Eclipse的運行需要依賴JDK(Java Develop Kit,Java開發包),因此需要下載使用JDK的包并進行安裝。JDK 1.6版本使用一個可執行程序來安裝,例如jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.exe,雙擊直接進行安裝即可。

2.安裝Eclipse

Eclipse集成開發環境是開放的軟件,可以到Eclipse的網站上去下載:

http://www.eclipse.org/downloads/

在Android系統發展的早期,各個版本的Eclipse在Android中均有所使用。經歷了Android版本的多次升級過程后,目前推薦使用Eclipse 3.5以上的版本,較低版本Eclipse可能不能使用。

3.在Eclipse中安裝ADT

ADT的含義為Android Development Tools(Android開發工具包),它主要具有以下一些功能:

可以從Eclipse IDE內部訪問其他的Android開發工具。例如,ADT可以直接從Eclipse訪問DDMS工具的很多功能——屏幕截圖、管理端口轉發(port-forwarding)、設置斷點、觀察線程和進程信息。

提供了一個新的項目向導(New Project Wizard),幫助快速生成和建立起新Android應用程序所需的最基本文件。

使構建Android應用程序的過程變得自動化、簡單易行,提供了一個Android代碼編輯器,可以幫助完成Android中各種源文件的編寫。

第一步:進入Eclipse環境,選擇“Help”→“Install New Software”,準備安裝插件,如圖1-3所示。

圖1-3 Eclipse中選擇安裝新軟件

第二步:選擇后將出現軟件升級對話框,如圖1-4所示。

圖1-4 Eclipse的軟件升級對話框

以上界面出現后,單擊右側自上而下的第3個按鈕“Add Site”,表示準備增加一些路徑,在這個路徑中獲得插件,單擊后界面如圖1-5所示。

圖1-5 Eclipse中增加ADT插件的路徑

在“Add Site”對話框中,在Location文本框中輸入Android插件的路徑:

https://dl-ssl.google.com/android/eclipse/

以上的方式是通過一個網絡地址獲取ADT插件。除了這種方式以外,另外一種方式是使用本地文件。單擊“Archive…”按鈕,使用這種方式將直接指定磁盤中的一個ADT包文件(例如ADT-12.0.0.zip等)。

獲得ADT插件文件包的方法,可以從如下的網站上下載:

http://developer.android.com/sdk/eclipse-adt.html

ADT文件包的本質是一個Eclipse中使用的插件,由于是Java插件,因此在Windows和Linux環境中使用的ADT包相同。

ADT文件本身是一個ZIP包,經過解壓縮之后,其結構如下所示:

        ADT-<version>/
        |-- features                    [特性jar的目錄]
        |-- plugins                     [插件jar的目錄]
        |-- index.html                  HTML格式的網頁描述文件
        |-- site.xml                    XML格式的網站管理文件
        `-- web                         [關聯網頁]

ADT文件包的plugins目錄中包含了com.android.ide.eclipse.adt_<version>.jar等Java插件包。

在大多數情況下,由于ADT對其他包有依賴,即使使用本地磁盤中的ADT文件包,依然不能脫離網絡環境完成安裝。

第三步:ADT相關的設置完成后,回到軟件升級對話框,work with的路徑變為了https://dl-ssl.google.com/android/eclipse/。后面的列表則變成了“Developer Tools”,即(項目就表示了)Android插件包中的工具,其中包含了以下幾個項目。

Android DDMS;

Android Development Tools;

Android Hierarchy Viewer;

Android Traceview。

其中的主工具為Android Development Tools,其他為輔助工具。一般情況下它們應該被一起安裝。選擇它們后,繼續進行安裝,出現的界面如圖1-6所示。

圖1-6 Eclipse中選擇安裝ADT

選擇接受(accept)并且選擇Finish完成安裝之前的配置,然后將進入安裝Android組件的階段。

在安裝的過程中,可能出現缺少某些包的情況,如圖1-7所示。

圖1-7 安裝Android的插件

這時,可以選擇“Window”→“Preference”,從左側的列表中選擇Install/Update項目,如圖1-8所示。

圖1-8 ADT相關的插件

在項目中,增加以下的內容:

Eclipse GEF,地址為:

http://download.eclipse.org/tools/gef/updates/releases/

Eclipse EMF,地址為:

http://download.eclipse.org/modeling/emf/updates/releases/

Eclipse GMF,地址為:

http://download.eclipse.org/modeling/gmf/updates/releases

Eclipse Webtools,地址為:

http://download.eclipse.org/webtools/updates/

Google eclipse Plugin,地址為:

http://dl.google.com/eclipse/plugin/3.5

第四步:安裝完成,關閉并重新啟動Eclipse。再次進入Eclipse后,將發現ADT已被安裝。

提示:ADT包是Android官方升級較快的內容,從最初2009年10月的ADT 0.9.4到2011年的12.0.0,其間推出過十余個版本。新版本的功能更強,且新版本也可以支持舊版本SDK。因此,無論SDK的版本是哪個,一般情況下都推薦使用最新版本的ADT。

4.獲得Android SDK

Android SDK可以在Android的網站上進行下載,相關部分的網址為:

http://developer.android.com/sdk/

早期Android的SDK獲得方式是使用直接下載包,這個包通常有幾百兆的大小。在目前的Android開發中,使用下載工具包+在線升級的方式。

第一步:獲得android-sdk_<version>-windows.zip。

從Android的網站上,獲取Android SDK的android-sdk_<version>-windows.zip。這個包不是完整的Android的SDK,而是SDK的預備包,它只有幾十兆大小。

解壓縮這個包,獲得Android SDK的基本目錄結構,包中包含了一個名稱為Setup的可執行程序,完整的SDK是通過這個可執行程序來獲得的。

第二步:運行SDK Setup.exe程序,將出現SDK的下載界面,如圖1-9所示。

圖1-9 Android SDK的下載界面

在Settings中進行設置,選中Force……項,表示強制使用網址,選擇后進行保存(Save and Apply)。回到Installed Packages中進行安裝,出現Android的各個版本的SDK、工具、文檔的安裝界面,如圖1-10所示。

圖1-10 選擇要安裝的組件

圖1-1 4 建立新的AVD

每個組件可以選擇接受(Accept)表示安裝,拒絕(Reject)表示不安裝,接受全部(Accept All)表示安裝所有的內容。文檔一般安裝成最新的版本。

選擇后,安裝程序將依次安裝各個組件,安裝流程如圖1-11所示。

圖1-11 Android的SDK安裝界面

SDK的下載安裝過程中,每個組件將首先被放置到temp中,以一個ZIP包的形式存在。下載完成后,得到完整的Android SDK。

Android的完整SDK的目錄結構如下所示。

add-ons:附加的包;

docs:HTML格式的離線文檔;

platforms:SDK核心內容;

platforms-tools:平臺相關的工具;

samples:應用程序的示例代碼(較新版本的SDK中具有);

tools:工具。

在platforms中包含的各個Android SDK版本的目錄中,包含系統映像、工具、示例代碼等內容。

data/:包含默認的字體、資源等內容;

images/:包含默認的Android磁盤映像,包括內存盤映像(ramdisk image),系統映像(system image),用戶數據映像(userdata image)等,這些映像是仿真器運行的時候需要使用的;

samples/:應用程序的示例代碼(較舊版本的SDK中具有);

skins/:包含了幾個仿真器的皮膚,每個皮膚對應了一種屏幕尺寸;

templates/:包含了幾個使用SDK開發工具的模板;

android.jar:Android庫文件的Java程序包,在編譯本平臺的Android應用程序的時候被使用。

提示:SDK的“升級安裝”實際上是一個下載的過程,得到環境后可以打包放到其他相同的主機環境中使用。

5.在Eclipse中配置Android SDK

以上的幾個步驟中1~3和4這兩部分內容可以分別進行,二者之間沒有依賴關系。這些步驟完成后,可以使用具有ADT的Eclipse環境配置Android的SDK。方法為:在Eclipse中選擇“Window”→“Preference”,從左側的列表中選擇Android項,如圖1-12所示。

圖1-12 Eclipse中選擇Android SDK的路徑

圖1-12 中,左側的Android選項是由于安裝了Android的ADT而出現的。在SDK Location文本框中,單擊“Browse”按鈕;選擇Android SDK的目錄,單擊“OK”按鈕。

在Window的Eclipse安裝完成Android的SDK開發環境之后,將會形成一個android環境私有的目錄,用于存放Android的安裝信息,其路徑為:

Documents and Settings\<用戶名>\.android

1.2.3 Linux環境中的Android SDK開發環境安裝

1.安裝JDK基本Java環境

在Ubuntu環境中,獲得Java JDK的方法如下所示:

        $ sudo apt-get install sun-java6-jdk

JDK的安裝路徑一般為usr/lib/jvm。

2.安裝Eclipse

在Eclipse網站上下載Linux版本的Eclipse,其他過程與Windows中相同。

3.在Eclipse中安裝ADT

與Windows中的步驟相同。

4.獲得Android SDK

獲得Linux版本的SDK包,android-sdk_<version>-linux_x86.zip,經過解壓縮之后,在根目錄中執行如下命令:

        $ tools/android update sdk

這里使用的是命令行執行的方式,雖然也會出現SDK的安裝界面。其他步驟與Windows中相同。在Linux版本的SDK中,與Windows的主要差別是主機運行的工具和腳本。

5.在Eclipse中配置Android SDK

與Windows中的步驟相同。

在Linux的Eclipse安裝完成Android的SDK環境之后,將會形成一個android環境私有的目錄,用于存放Android的安裝信息,其路徑為:

Home/<用戶名>/.android

1.2.4 Android中運行仿真器環境

1.建立Android虛擬設備

為了運行一個Android仿真器的環境,首先需要建立Android虛擬設備(AVD),表示一個模擬真實設備的運行環境。

在Eclipse的菜單中,選擇“Window”→“Android AVD Manager”,出現“Android SDK and AVD Manager”窗口,界面如圖1-13所示。

圖1-13 Android SDK和AVD管理器

界面中間的列表表示了目前可以使用的Android虛擬設備。在沒有虛擬設備的情況下單擊右側的“New”按鈕選擇建立一個虛擬設備。

建立新的Android虛擬設備的窗口為Create new AVD,如圖1-14所示。

Android虛擬設備的建立包含了以下一些選項。

名字(Name):這個虛擬設備的名稱,由用戶自定義。

目標(Target):選擇不同的SDK版本(依賴于目前SDK的platform目錄中包含了哪些版本的SDK)。

SD卡:模擬SD卡,可以指定SD卡的容量或者使用一個SD卡的映像文件。SD卡映像文件實際上是使用mksdcard工具建立的。

皮膚(Skin):這里皮膚的含義其實是仿真器運行尺寸的大小(并非僅僅是一個外觀)。可以選擇的尺寸一般有HVGA-P(320×480),HVGA-L(480×320)等,也可以通過直接指定尺寸的方式指定屏幕的大小。

屬性(Property):可以由用戶指定仿真器運行的Android系統的一些運行時屬性,例如LCD密度、設備內存等。

在建立一個虛擬設備后,將在android環境私有的目錄中建立這個設備的臨時目錄,包括臨時的system、data映像文件、SD卡映像文件等。

2.運行虛擬設備

在“Android SDK and AVD Manager”窗口中,選擇一個設備,單擊右側的“Start”按鈕,將調用仿真器從虛擬設備運行一個Android系統。

一個運行于HVGA-P(320×480)尺寸的仿真器的界面如圖1-15所示。

圖1-15 運行仿真器的界面

窗口的左側是運行的仿真器的屏幕,右側是模擬的鍵盤。設備啟動后,可以使用右側的鍵盤模擬真實設備的鍵盤操作,也可以用鼠標點擊(或者拖曳和長按)屏幕,模擬觸摸屏的操作。

除了使用右側的模擬鍵盤之外,也可以使用PC的鍵盤來模擬真實設備的鍵盤操作。尤其是當仿真器的大小不是標準值的時候,可能不會出現按鍵的面板,在這種情況下只能使用鍵盤的按鍵來控制仿真器的按鍵。

Android中的按鍵和鍵盤上的按鍵之間的映射關系如表1-1所示。

表1-1 仿真器和主機按鍵的對應關系

Android仿真器啟動虛擬設備之后,可以使用主機的網絡作為自己的網絡,使用主機的聲音系統作為自己的聲音設備。

1.2.5 Android中建立工程

1.建立工程

Android的SDK環境安裝完成后,就可以在SDK中建立工程并進行調試了。在Android的Eclipse環境中,建立Android工程分成幾個步驟。

首先,選擇“File”→“New”→“Project”,然后選擇“Android”→“Android Project”,單擊“Next”按鈕,將出現工程建立界面,如圖1-16所示。

圖1-16 建立新的Android工程界面

選擇建立一個Android工程之后,將出現工程建立的對話框,在其中通過配置可以建立一個Android應用程序的功能。顯示的界面如圖1-17所示。

圖1-17 建立Android工程(左:工程建立窗口;右:從已有代碼建立工程)

建立工程的第一個選項是在當前工作區建立一個空的工程,第二個選項是從已有的代碼(工程目錄)建立工程,可以使用SDK的platforms/android-<level>/samples或者samples中的各個子目錄建立工程,這是SDK自帶的示例程序。如果從其他源代碼建立工程,那么所指定的目錄中需要具有Android的工程描述文件(AndroidManifest.xml文件)。

在建立工程的時候,具有幾個選項:指定應用程序名、包名、創建活動,其中Min SDK表示目標可以支持的最小SDK。這里有不同API級別可以選擇,選擇了某個級別后,工程生成的APK包也就默認是基于這個級別的。

越高版本的SDK具有越多的功能,但是低版本的SDK可以在低版本的設備上兼容運行(前提是沒有使用到超出這個版本SDK的接口)。

回到建立工具的界面后,單擊“Finish”按鈕,工程將被建立。

提示:SDK建立工程的過程中,如果應用程序包沒有名字,將默認使用第一個組件的名字作為應用程序包的名字,在這種情況下最好手動輸入一個更恰當的名字。

一個Android的工程建立后,在Eclipse的工程環境中(一般在工作區的左部分)將列出工程的組成,如圖1-18所示。

圖1-18 工程結構

圖1-18中是通過包瀏覽器(Package Explorer)來瀏覽一個Android應用程序包的結構。Android應用程序包分成以下幾個部分。

AndroidManifest.xml文件:工程文件;

default.properties文件:默認屬性文件;

src目錄:源代碼部分;

res目錄:資源文件部分;

assets目錄:資產文件部分;

gen:生成的中間目錄;

bin:目標二進制文件目錄。

在一個Android工程中,AndroidManifest.xml文件、src、assets和res一般為工程中具有的,gen、bin目錄和default.properties文件一般為工程建立后生成的。

2.查看和編輯各個文件

建立工程后,可以通過IDE環境查看和編輯Android應用程序中的各個文件。不同的文件將使用不同的工具查看,具有不同的效果,主要的類型包括工程描述文件、布局文件、表示數值的XML文件、Java源代碼文件等。

(1)工程描述文件

Android的工程描述文件也就是根目錄中的AndroidManifest.xml文件,其查看和編輯的情況如圖1-19所示。

圖1-19 查看和編輯AndroidManifest.xml文件

如圖1-19所示,在界面的下端具有多個不同的標簽,其中的前面幾個標簽如下所示。

Manifest:表示全局性描述內容;

Application:表示應用以及各個組件;

Permissions:表示各個許可;

Instrumentation:表示各個用于測試的命令。

以上幾個標簽用于使用窗口查看和編輯AndroidManifest.xml的不同方面的內容。

最后一個標簽一般為AndroidManifest.xml,單擊它將切換到文本模式,使用文本的形式查看和編輯AndroidManifest.xml中的內容。

提示:窗口化編輯和文本化編輯的最終效果是相同的,都體現在最終的XML格式的文件上。

(2)布局文件

布局文件就是res/layout目錄中的各個表示布局的XML文件,其查看和編輯的情況如圖1-20所示。

圖1-20 查看和編輯布局文件

布局查看器的一個比較有用的功能是可以直觀地查看程序的UI布局。利用IDE的布局查看器,可以在程序沒有運行的情況下直接查看和組織目標UI界面。單擊標簽(布局文件的名稱)可以切換到文本模式。

布局文件的可視化瀏覽還有幾個配置選項,例如屏幕的大小、屏幕的方向(landscape或portrait)、主題、SDK的版本。在不同的選項情況下,程序運行的效果不同。

提示:布局瀏覽器提供的布局文件的可視化查看僅供參考,具體的效果可能因設備的不同而不同。

(3)表示數值的XML文件

res目錄中的value等子目錄中的大部分XML文件表示數值,在界面中可以查看各個文件和編輯數值,如圖1-21所示。

圖1-21 查看各個value文件和建立數值

Resources標簽,用于使用窗口化的環境查看和建立各個資源,在建立數值的時候,將出現一個對話框,這里顯示的Color、Drawable、Integer Array等內容,表示的就是各個數據的類型。

在數值查看界面中,如果切換到后面的xxx.xml標簽,則表示通過文本的方式查看和編輯當前的XML文件。

(4)Java源代碼文件

Java源代碼文件一般在src目錄當中,IDE環境使用一個特殊的界面編寫各個Java源代碼文件,如圖1-22所示。

圖1-22 Java源代碼文件的編輯界面

Java源代碼采用文本的方式顯示,右邊也列出了Java源代碼中類的層次結構。在IDE的源代碼環境開發Java程序,主要具有以下幾個特性。

自動修正:自動修正調用的方法名稱;

類方法屬性查找:顯示類的屬性方法的相關提示信息;

自動增加依賴包:根據代碼引用類的情況,自動增加import的內容;

顯示代碼中的警告信息(例如,import多余包,沒有使用的變量等)。

其中,自動增加依賴包的功能非常實用,可以減少開發中使用一個類就要手動寫入import內容的煩瑣工作。

3.運行工程

在Android中運行一個工程,可以通過右鍵單擊工程名稱,選擇“Run As”或者“Debug As”來運行和調試工程。

提示:開始運行的時候,如果現在已連接到真實的設備或者仿真器設備上,將直接使用這個設備,否則將啟動一個新的仿真設備。

按照上述方式運行一個應用程序包,實質上是一個安裝+啟動的雙重過程,第一次運行后包就安裝到目標設備中了。開始運行后,在IDE下層的控制臺(Console)標簽中,將出現目標運行的log信息,可以獲取目標運行的信息。在仿真器環境中,運行一個包之后,控制臺如圖1-23所示。

圖1-23 包運行階段控制臺

一個應用程序包開始運行的時候,出現類似的Log信息如下所示:

        [2011-04-02 09:38:54- Skeleton] ------------------------------
        [2011-04-02 09:38:54- Skeleton] Android Launch!
        [2011-04-02 09:38:54- Skeleton] adb is running normally.
        [2011-04-02  09:38:54  -  Skeleton]  Performing  com.example.android.skeletonapp.
    SkeletonActivity activity launch
        [2011-04-02 09:38:54- Skeleton] Automatic Target Mode: using existing emulator
    'emulator-5554' running compatible AVD 'Android_23'
        [2011-04-02 09:38:54- Skeleton] WARNING: Application does not specify an API level
    requirement!
        [2011-04-02 09:38:54- Skeleton] Device API version is 10 (Android 2.3.3)
        [2011-04-02 09:38:54- Skeleton] Uploading Skeleton.apk onto device 'emulator-5554'
        [2011-04-02 09:38:54- Skeleton] Installing Skeleton.apk...

在運行一個仿真設備的時候,可以進一步通過選擇“Run As”中的“Run Configurations”進行進一步的配置,啟動后的界面如圖1-24所示。

圖1-24 選擇工程中運行的動作

在Project選項中可以選擇啟動的工程。啟動活動(Launch Action)選項中可以選擇啟動哪一個活動(Android的一個工程中可以包含多個活動)。在Target標簽中可以選擇啟動的時候使用的設備。

1.2.6 在IDE中使用各種Android工具

在仿真器環境中,可以使用集成的Android相關工具。使用的方法是選擇“Window”→“Show View”→“Other”選項,開啟Android的各個工具。

選擇Android工具的對話框如圖1-25所示。

圖1-25 選擇Android工具的對話框

在工具選擇界面中,可以選擇的Android主要工具包括:Device(設備控制)、Emulator Control(仿真器控制)、File Explore(文件瀏覽)、Heap(堆內存)、Logcat(Log輸出)等。

每個工具開啟之后,將出現一個單獨的選項卡。

1.使用設備(Device)工具和Heap(堆)工具

Device工具是Android中運用調試的主要工具,可以用于監測仿真器的運行狀況。Device工具基本的功能是顯示各個Java進程的信息。使用其菜單還可以查看Heap(堆內存)、Threads(線程)的信息,還具有停止某個進程的運行的功能。Device窗口工具欄最右側的Screen Capture(截屏)按鈕,可以打開一個窗口用于截取屏幕的窗口。

Device工具和屏幕截取工具的窗口如圖1-26所示。

圖1-26 Android的Device工具和屏幕截取窗口

單擊Dump Hprof File還可以獲得后綴名為hprof的文件。如果當前系統的Eclipse環境中安裝了MAT(Memory Analyzer Tool,內存分析工具),可以使用Eclipse的“Windows”→“Open Perspective”→“Other”→“Memory Analyzer”來分析hprof文件,獲得當前進程內存泄漏的情況。

2.使用Logcat工具

Logcat工具是查看系統Log信息的工具,可以獲得Android系統運行的時候打印出來的信息。工具的界面如圖1-27所示。

圖1-27 使用Logcat工具顯示Log

這里通過GUI界面顯示文字信息,顯示的內容是從目標系統(真實設備或者仿真器)的Log輸出。Log的窗口中記錄的信息也就是實際的Android系統打印出來的,包含了時間(Time)、級別(Level)、進程ID(pid)、標簽(tag)、Log內容(Message)等項目。

Logcat窗口可以設置Log的過濾器(Filter),這樣可以僅僅獲得自己需要的Log信息,屏蔽其他的信息。

3.使用仿真器控制(Emulator Control)工具

選擇“Emulator Control”選項卡可以開啟仿真器的控制對話框,界面如圖1-28所示。

圖1-28 Android仿真器控制界面

仿真器控制包含了以下幾個方面的功能。

Telephony Status:控制電話系統的狀態。

Telephony Actions:可以模擬打電話,發短信。首先需要在“Incoming number”文本框中輸入電話號碼,表示當前的電話號碼。此后,選擇“Voice”,單擊“Call”按鈕,表示以當前號碼呼叫仿真器,如果在“Message”文本框中輸入文本,單擊“Send”按鈕,表示以當前號碼向仿真器發送一個短信息。

Location Controls:定位系統的控制,主要用于向仿真器輸入GPS信息。例如Longitude和Latitude可用于發送經緯度信息。

提示:仿真器控制中的幾個選項僅用于控制仿真器,它們通過和仿真器運行的硬件仿真程序打交道,來實現模擬幾種硬件。當連接到實際的硬件設備的時候,這些功能就不起作用了。

4.使用文件瀏覽器(File Explorer)工具

文件瀏覽器可以從主機訪問目標機的幾個文件系統,用來上傳文件、下載文件、刪除內容和新建目錄等。

文件瀏覽器的界面如圖1-29所示。

圖1-29 Android文件瀏覽器工具(左:瀏覽器界面;右:上傳文件界面)

文件瀏覽器的界面中,列出了目標系統的幾個重要目錄:data、system、mnt等,并可以展開成樹狀結構。使用右側的pull和push工具可以將內容從目標系統取出或者放入。

5.使用Windows工具

Windows工具用于查看當前系統的窗口情況,如圖1-30所示。

圖1-30 窗口工具

Windows工具有以下幾個選項。

Refresh List of This Device:刷新當前設備;

Load view hierarchy into viewer tree:查看View的層次結構;

Inspect a screenshot in the Pixel Perfect view:調用Pixel Perfect查看具體的樹狀結構。

6.使用屬性查看(View Properties)工具

View Properties是屬性查看工具,可以查看界面的屬性,工具運行情況如圖1-31所示。

圖1-31 屬性查看工具

使用屬性查看工具可以查看到的內容為當前視圖的一些屬性。

7.使用Pixel Perfect工具

Pixel Perfect,Pixel Perfect Loupe和Pixel Perfect Tree,實際上這里調用了Hierarchy Viewer工具,這是一個可以輔助更好地檢查和設計用戶界面的工具。

例如:使用Pixel Perfect Tree可以列出某個界面中視圖的層次結構,顯示的效果如圖1-32所示。

圖1-32 Pixel Perfect Tree工具

Pixel Perfect Tree中的樹狀結構表示的也就是當前界面中的UI的層次結構,根據Layout的嵌套關系劃分層次。

Pixel Perfect可以從細節上查看某個View的效果,這種觀察比實際產品上的顯示狀況更細,可以作為進一步優化顯示效果的依據。

Pixel Perfect還具有一個特殊的功能:加載一個圖片以查看這個圖片在界面上的顯示效果。

8.使用Tree Overview和Tree View

Tree Overview和Tree View用于以界面的方式顯示當前View的層次結構。Tree Overview是一個宏觀的視圖,移動其矩形框的位置,得到的就是使用Tree View的詳細顯示。

Tree View的效果如圖1-33所示。

圖1-33 Tree View工具

這里選中一個項目(Vi e w)后,可以查看它的詳細情況,通過這種方式依次得到系統在界面層次上的各部分的開銷。

當設備上的窗口有所變化的時候,可以通過單擊界面右上角的Refresh按鍵更新界面的顯示。

提示:Windows工具中的Load view hierarchy into viewer tree更新的就是Tree View的內容。

Tree View中的樹狀結構和Pixel Perfect Tree中的樹狀結構表示的內容類似,只是Tree Vi e w采用了更加圖形化的方式,并且可以看到進一步的信息。

9.使用Layout View

Layout View工具用于查看界面中每一個元素的情況。Layout View工具的界面如圖1-34所示。

圖1-34 Layout View工具

當啟動后Layout View列出的只是界面的大體框架結構,單擊右上角的“Load all View Image”并單擊框架結構,可以看到每一個元素的情況。

1.2.7 其他Android工具

在Android SDK的tools目錄中,具有一些可以脫離SDK環境獨立使用的工具。在Windows和Linux不同的SDK環境中,這些工具不相同,例如某些工具在Windows中是批處理文件(*.bat),在Linux中是可執行程序。但是它們的使用方法是類似的。

主要有以下具有界面環境的工具。

ddms:相當于IDE環境中的Device、Emulator Control、Logcat、Heap、File Explorer等工具的集合。

hierarchyviewer:相當于IDE環境中的Windows、Pixel Perfect、Tree Overview、Tree View和Layout View等工具。

有一些Android的工具需要在命令行的環境中運行:在Linux中打開Shell界面來運行;在Windows中選擇“開始”→“運行”,輸入“cmd”并單擊“確定”按鈕,進入命令行的界面中運行。

命令行的工具是在Android SDK的tools目錄中的腳本和可執行程序,主要為adb和mksdcard等。

adb(Android Debug Bridge,Android調試橋)是Android的主要調試工具,它可以通過網絡或者USB連接真實的設備,也可以連接仿真器。通常在命令行的界面中,使用adb進行調試。

使用adb連接目標系統終端的方式如下所示:

        > adb shell

將出現shell提示符,這就是Android所運行的Linux系統中的shell終端,可以在這個shell提示符后執行Android系統提供的Linux命令。

使用adb安裝應用程序的方法為:

        > adb install XXX.apk
        > adb uninstall <package_name>

使用adb在主機和目標機之間傳送文件的方法為:

        > adb push <host_path> <target_path>
        > adb pull <target_path> <host_path>

提示:IDE中的幾個圖形化的工具也都是基于adb和目標系統進行聯系的。

mksdcard是用來建立SD卡映像的工具,用來建立一個Fat 32格式的磁盤映像,其使用方法如下所示:

        mksdcard [-l label] <size> <file>

mksdcard的參數-l用于指定磁盤映像的標簽,size用于指定磁盤映像的大小,其后面可以跟K、M、G等參數,file是磁盤映像的文件名稱,這個文件也就是在仿真器運行過程中指定的文件。

mksdcard的一個示例如下所示:

        > mksdcard 128M sdcard.img

這表示建立了一個大小為128MB,名稱為sdcard.img的Fat32磁盤映像文件。這個映像文件可以在AVD中被選擇。

主站蜘蛛池模板: 肥城市| 定远县| 房山区| 资阳市| 呼和浩特市| 弥渡县| 宜兰市| 珲春市| 岳阳县| 华亭县| 商南县| 门源| 徐州市| 桐柏县| 福鼎市| 中山市| 渝中区| 通城县| 上栗县| 普兰店市| 湖州市| 涞水县| 贵州省| 利川市| 舟山市| 蚌埠市| 杭锦旗| 曲水县| 中卫市| 淄博市| 屯门区| 遵义市| 长泰县| 安平县| 宝鸡市| 金湖县| 蒙自县| 西乌珠穆沁旗| 涟水县| 防城港市| 白水县|