android如何調試
㈠ android開發如何調試
能夠在eclipse上運行調試應用程序之前,你必須為它創建一個啟動項。啟動項指定哪個工程將被啟動,哪個activity開始工作,以及使用哪些模擬器選項等。
按照以下步驟為Eclipse版本的應用程序創建合適的啟動項:
打開啟動項管理工具。
在Eclipse 3.3 (Europa)的版本中,酌情選擇 Run > Open RunDialog... or Run > Open Debug Dialog... 。
在Eclipse3.4 (Ganymede)版本中,酌情選擇 Run > Run Configurations...or Run > Debug Configurations... 。
在左邊的工程類型列表選擇Android Application選擇,雙擊(或者點擊右鍵選擇new),創建一個新的啟動項。
輸入啟動項名稱。
在Android標簽中,瀏覽要開始的工程和Activity 。
在Target標簽中,設置想要顯示的屏幕及網路屬性,以及其他任何模擬器啟動選項。
你可以在Common標簽中設置更多的選項.
按下Apply保存啟動配置,或者按下Run或Debug()。
運行和調試應用程序
一旦你設定了工程和工程啟動配置,你就可以按照以下的說明運行和調試應用程序了。
從eclipse主菜單,根據情況選擇Run>Run 或者 Run>Debug,開始運行或者調試活動啟動項。
注意,這里活動啟動項是在運行配置管理中最最近一次選中的那個。它不一定就是在Eclipse Navigation 面板中選擇的程序(如果有的話)
設置和修改活動啟動項,可以使用啟動項管理工具。如何獲得啟動項管理工具可以參考創建一個啟動項
運行或調試應用程序將觸發以下動作:
啟動模擬器,如果他還沒有開始運行。
編譯工程, 如果在上次編譯的基礎上修改過代碼,將重新編譯。在模擬器上安裝應用程序。
Run選項,開始運行程序。
Debug 在"Wait for debugger "模式下啟動程序,然後打開調試窗口並將Eclipse java調試器和程序關聯。
利用其他IDEs和工具開發Android應用程序
通常我們使用安裝有ADT插件的eclipse Eclipse with the ADT plugin.來開發Android程序,這個插件將編輯,build和調試功能集成到IDE上。
然而,如果你想在其他的IDE上開發程序,例如IntelliJ,或者使用沒有ADT插件的eclipse也可以。SDK提供了安裝,編譯,調試應用程序所需要的工具。
創建一個android工程
Android SDK包含一個activityCreator的程序,它將為工程產生多個stub文件和一個build文件。你可以用這個程序創建一個新的 Android工程或者在現有代碼上創建工程,如SDK中包含的例子。對於linux 和Mac系統,SDK提供activityCreator.py,一個 Python腳本,Windows上則是activityCreator.bat一個批處理腳本。無論是哪種平台,用法是一樣的。
按以下步驟運行activityCreator創建Android工程:
在命令行下,切換到SDK下的tools/目錄下,為你的工程文件新建一個目錄。如果你是在現有代碼上創建工程,切換到程序的根目錄下。
運行activityCreator。在命令行下,你必須指定完全合格的類名作為參數。如果你是創建一個全新的工程,這個類代表的與它同名的stub類和腳本文件。如果是在現有代碼上創建工程,必須指定軟體包中其中一個Activity類的名稱。命令選項的腳本包括:
--out <folder> 設定輸出目錄。默認情況下輸出目錄為當前目錄。如果你想為工程文件創建一個新的目錄,可以使用這個選項來指向它。
--ide intellij, 在一個新的項目中生成IntelliJIDEA 工程文件。
這里有個例子:
~/android_linux_sdk/tools $ ./activityCreator.py --out myprojectyour.package.name.ActivityName
package: your.package.name
out_dir: myproject
activity_name: ActivityName
~/android_linux_sdk/tools $
activityCreator腳本生成以下文件和目錄(但是不能重寫已有文件):
AndroidManifest.xml 程序的清單文件,同時為工程指定Activity類。
build.xml 一個Ant文件,用來編譯/打包應用程序。
src/your/package/name/ActivityName.java 你指定的輸入Activity類。
your_activity.iml, your_activity.ipr, your_activity.iws [only with the-ide intelliJ flag] intelliJ工程文件
res/ 資源目錄.
src/ 源代碼目錄.
bin/ build腳本的輸出目錄.
現在你可以將開發文件夾移到任何地方,但是記住,必須使用tool/文件夾下的adb程序將文件發送到模擬器上。因此你需要在你工作環境和tools/文件夾之間活動。
當然你需要避免移動SDK目錄,因為它將打斷編譯腳本。(再重新build之前需要手動更新SDK的映射路徑)
編譯 android應用程序
使用activityCreator生成的Ant文件build.xml來編譯程序
如果你沒有,你可以通過Apache Ant home page得到Ant文件。安裝它,並確定它在你的可執行文件路徑下。
呼叫Ant之前,你需聲明JAVA_HOME環境變數,並將它設置為JDK的安裝路徑。
注 意:在windows上,JDK默認的安裝路徑為"ProgramFiles",這個路徑將會引起Ant失敗,因為路徑中間有空格。解決這個問題,你可以像這樣指定環境變數 JAVA_HOME:JAVA_HOME=c:\Prora~1\Java\ 然而簡單的解決方法是將JDK安裝在沒有空格的目錄下。例如:c:\java\jdk1.6.0_02.
如果你還沒有這么准備好,按照上面創建一個新的工程的介紹建立一個工程。
現在你可以為你的工程運行Ant編譯文件,只需在build.xml同文件夾下輸入ant即可。每次修改原文件或是資源,都需要重新運行ant,它將把最新版的應用程序打包以便deploy.
運行Android程序
運行一個編譯好的程序,你需要用adb工具將.apk文件載入到模擬器的/data/app/目錄下,用法如下面介紹。
啟動模擬器(命令行下運行sdk目錄下的/tools/emulator)。
模擬器切換到主畫面(最好不要在程序運行的時候向模擬器安裝程序,可以按home鍵離開應用程序)。
運 行adb,安裝myproject/bin./<appname>.apk文件。例如,安裝Lunar Lander 示例,命令行下,切換到SDK目錄下的/sample/LunarLander子目錄下,輸入../../tools/adbinstall bin/LunarLander.apk
在模擬器中,打開可執行程序列表,卷動屏幕,選中並啟動你的應用程序。
注意:當你第一次安裝一個Activity時,你可能需要在啟動項顯示之前,或者其它程序調用它之前重新啟動模擬器。因為軟體包管理工具通常只有在模擬器啟動時才能完全的審查manifests。
為程序附加調試器
這一節我們介紹如何在屏幕上顯示調試信息(例如CPU使用率),以及如何將IDE和模擬器上運行的程序關聯起來。
使用eclipse插件可以自動的生成調試器。但你也可以通過配置IDES來監聽調試埠得到調試信息。
啟動Dalvik Debug Monitor Server (DDMS) 工具 ,它在IDE和模擬器之間扮演著埠轉換服務的角色。?
設置模擬器調試配置選項。例如,等到調試信息被載入後才啟動應用程序。注意,很多調試選項無需DDMS也可以使用,例如模擬器上顯示CPU的使用效率,或者屏幕的刷新頻率。
配置IDE,使得調試時IDE與8700埠關聯 .how to set up Eclipse to debug your project. 包含以下信息。
配置IDE附加調試埠
DDMS將為每一個虛擬機分配一個特殊的調試埠,這個埠在模擬器上可以找到。你必須將你的IDE與此埠(虛擬機上信息欄中有列出這些埠)關聯或者是默認的埠8700。這樣可以使IDE 連接到模擬器上程序列表中的任一個程序。
你的IDE需要能夠關聯模擬器上正在運行的程序,顯示它的線程,並允許你掛起它,檢查它的狀態,設置斷點。如果你在開發設置面板選擇了「等待調試」,應用程序將等到Eclipse連接後才運行,所以你需要在連接之前設置斷點。
修改正在調試的程序,或者在當前程序運行時選擇「等待調試」將引起系統殺死這個應用程序。如果你的程序處於一種壞的狀態,你可以使用方式殺死它,方法很簡單,只需要設置和鉤掉復選框。
㈡ android怎麼在手機上調試
在windows7操作系統android studio中按照如下步驟使android工程在手機上運行調試。
1、首先設置手機:打開手機設置-->開發者選項-->勾上USB調試允許USB線調試,用USB線連接PC機與Android手機,手機會自動安裝一些驅動到電腦。完成連接後電腦處出現USB連接圖標,表示連接成功。
㈢ 【Android】如何使用ADB進行調試
1、adb devices
( 用於查看當前adb連接的設備有哪些,這里目前是無)
(3)android如何調試擴展閱讀:
無線使用ADB(Android Debug Bridge)非常的實用,它能夠讓你的手機用無線來取代USB連接,與電腦鏈接起來更加的方便快捷,還可以保護電池。需要root。
還可以進行以下的操作:
1、快速更新設備或手機模擬器中的代碼,如應用或Android系統升級;
2、在設備上運行shell命令;
3、管理設備或手機模擬器上的預定埠;
4、在設備或手機模擬器上復制或粘貼文件;
老玩家對adb這個調試工具肯定不陌生了,不過一般都是用USB連接來玩兒,這次帶來的是用無線進行連接,就太強大了,畢竟usb連接對電池的壽命有一定影響。
㈣ 怎樣在Android Studio中調試
先編譯好要調試的程序。1.設置斷點選定要設置斷點的代碼行,在行號的區域後面單擊滑鼠左鍵即可。2.開啟調試會話點擊紅色箭頭指向的小蟲子,開始進入調試。IDE下方出現Debug視圖,紅色的箭頭指向的是現在調試程序停留的代碼行,方法f2()中,程序的第11行。紅色箭頭懸停的區域是程序的方法調用棧區。在這個區域中顯示了程序執行到斷點處所調用過的所用方法,越下面的方法被調用的越早。3.單步調試3.1stepover點擊紅色箭頭指向的按鈕,程序向下執行一行(如果當前行有方法調用,這個方法將被執行完畢返回,然後到下一行)3.2stepinto點擊紅色箭頭指向的按鈕,程序向下執行一行。如果該行有自定義方法,則運行進入自定義方法(不會進入官方類庫的方法)。具體步驟如下:在自定義方法發f1()處設置斷點,執行調試點擊3.3Forcestepinto該按鈕在調試的時候能進入任何方法。3.4stepout如果在調試的時候你進入了一個方法(如f2()),並覺得該方法沒有問題,你就可以使用stepout跳出該方法,返回到該方法被調用處的下一行語句。值得注意的是,該方法已執行完畢。3.5Dropframe點擊該按鈕後,你將返回到當前方法的調用處(如上圖,程序會回到main()中)重新執行,並且所有上下文變數的值也回到那個時候。只要調用鏈中還有上級方法,可以跳到其中的任何一個方法。
㈤ 如何在真機上調試Android應用程序
主要通過以下幾個步驟:
1、手機通過數據線連接在電腦上
2、設置android手機為USB調試模式。步驟:menu—> 設置 —> 應用程序 —> 開發 , 選擇【USB調試】
3、如果是window系統,系統會提示安裝驅動:
7、選中手機設備,點擊OK之後,程序就開始在真機上安裝了,控制台輸出如下信息:
[2011-04-07 22:24:49 - HelloWorld] Uploading HelloWorld.apk onto device 『HT99YLG11834′
[2011-04-07 22:24:49 - HelloWorld] Installing HelloWorld.apk…
[2011-04-07 22:24:53 - HelloWorld] Success!
[2011-04-07 22:24:53 - HelloWorld] Starting activity com.eightqiu.activity.StatsResultActivity on device
[2011-04-07 22:24:57 - HelloWorld] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.eightqiu.activity/.StatsResultActivity }
8. 設置應用程序為調試模式。操作: 編輯AndroidManifest.xml 增加調試參數android:debuggable="true", 如下:
<application android:icon="@drawable/icon" android:label="@string/app_name" android:debuggable="true">
9. 執行真機調試操作:ECLIPSE調試對話框中,Target窗口中選擇Manual,點擊【debug】按鈕,選擇真機設備,開始調試。
註:不管是否啟用ECLIPSE環境,任何Android軟體只要在真機上運行發生異常,都可以在命令行窗口下查看具體異常信息:
執行:./adb logcat 可以查看到更多的系統異常消息。在這些消息中要注意查看Caused by:打 頭的行,這些行指明了在哪行代碼出的錯誤
10、運行這個應用程序,這樣就可以使用手機來測試了
㈥ 如何使用Android真機進行調試
開發android應用程序的時候,有時候開發不得不採用真機調試,原因很簡單,因為模擬器暫時無法支持模擬一些硬體設備,而重力感應一類的開發效果更需要用真機調試。當然,採用真機調試要比模擬器快很多,模擬器不僅佔PC的資源,而且運行久了會變得相當的遲鈍。
採用android真機調試的最需要解決的是真機與電腦連接的問題,一旦成功連接之後,其實與模擬器調試就沒什麼差別了,只需要在運行Android Project時選擇真機即可。在Android2.3之前,由於Android真機無統一的標准,機型眾多並且各自的USB驅動都不一樣,因此需要去各自的手機生產廠商官方網站去下載並安裝對應正確的usb的驅動(或者說是ADB Interface Driver),不過在新版本的SDK中,由google提供了新的usb驅動解決方案,該驅動存放在」%android_sdk_path%/google-usb_driver」文件夾,一般來說目前市面上流行的Android系統機型都能夠被支持,因此簡化了USB驅動安裝,我們優先採用此驅動進行安裝,實在無法成功安裝再去下載由真機生產廠商提供的驅動。這里以筆者在win7使用的MotorolaMilestone為例。
第一步:將我們開發所用的Android真機的USB調試功能打開(打開方法為Settings(設置)àApplications(應用程序)àDevelopment(開發)à勾選USB debugging(USB調試)),然後通過usb連接線連接到開發所用的PC上,由於是在沒有安裝usb驅動的情況下進行連接,系統會發現新硬體並且嘗試通過windows update在互聯網上搜索驅動進行安裝:
第二步:由於通過windows update查找驅動會耗費非常長的時間並且需要互聯網支持而且不一定能夠成功找到,因此我們點擊下方的「跳過從Windows Update獲得驅動程序軟體」跳過搜索:
第三步:關閉自動安裝後,通過右鍵點擊「計算機」(XP-我的電腦)選擇「管理」進入到計算機管理界面,點擊左邊的「設備管理器」進入到設備管理界面,此時我們會發現一個帶有黃色感嘆號標志的硬體設備(如圖中所示,位於其他設備分支下),即「Motorola ADB Interface」,這代表著該設備缺少驅動程序支持,從名稱上看很顯然這個設備就是我們usb調試需要的支持設備:
第四步:安裝該設備的驅動程序,右鍵點擊「Motorola ADB Interface」選擇「更新驅動程序軟體」,彈出如下圖所示框體:
第五步:正如前面所說,由於我們的SDK中已經存在了google提供的usb驅動程序,因此我們選擇第二項「瀏覽計算機以查找驅動程序軟體」,進入到下一對話框,在這里點擊瀏覽,選中目錄「%android_sdk_path%/google-usb_driver」,例如這里是使用的D:\study\programfiles\android-sdk-windows-r8\google-usb_driver路徑,勾選上下方的「包括子文件夾」,點擊下一步:
第六步:在上一步最後點擊下一步按鈕後,系統會開始在我們設置的文件夾下查找驅動程序軟體並進行安裝,這一步需要2分鍾左右的時間,請耐心等待:
第七步:等待一段時間後,不出意外,系統將會提示「已經成功地更新驅動程序軟體」,如下圖,如果這一步失敗,也不用慌張,可能是google提供的這種驅動暫時不能支持你所使用的真機,這時就需要到你所使用機器的生產廠商的官方網站去下載驅動程序軟體,然後重復前面的步驟,只需要在第五步時設置驅動程序軟體路徑時定位到你所新下載的特定驅動程序的存放路徑即可,附件還提供了兩款常用USB驅動程序,即motorola和HTC的usb驅動。
第八步:驅動程序安裝完成後,此時再到設備管理器中查看,可以發現帶黃色感嘆號的「Motorola ADB Interface」設備已經消失了,取而代之的是在Android Phone分支下的「Android Composite ADB Interface」設備,這里再提到一點,如果是使用的Motorola的驅動程序的話,這里可能就是顯示的「Motorola ADB Interface」了:
第九步:雖然前面系統已經提示了驅動程序安裝正確,如果才能確定PC已經識別
Android真機並且正確地建立了連接呢?很簡單,首先點擊開始->運行,輸入cmd:
第十步:在彈出的命令提示符界面中使用命令adb devices查看設備(adb命令所對應的應用程序存放在%android-sdk-path%\platform-tools路徑下,這里能夠在任意路徑下使用adb是因為筆者PC機的環境變數中加入了該路徑,如果沒有設置環境變數則需要首先定位到%android-sdk-path%\platform-tools路徑,否則會提示adb不是一個有效的命令,如下圖所示,返回了一個編號為04038B6005021006的device(代表真機),這就代表真機已經成功地與PC建立起連接了,如果PC上也運行了模擬器,會發現不只一條的記錄,模擬器的類型是emulator:
那麼,如何在調試的時候選擇真機呢?通常,當我們點擊運行一個Android Project時,它的默認行為是由eclipse自主選擇一個設備進行應用程序的安裝、運行,如果想要人工自主地選擇調試設備,可以在對應Project的Run Configuration中進行設置,如圖:
點擊Run Configuration後,將會彈出配置界面:
該界面左邊一側的欄目中是現在存在的一些可配置的應用程序,在左邊選擇待調試的應用程序,然後在右邊單擊Target選項卡,選擇Manual(手動)即可,需要注意的是,好像目前eclipse在這里存在一個小問題(有可能是筆者自身的操作問題),就是新建的一個項目在第一次編譯運行過之前,該項目對應的應用程序不會出現在左邊的應用程序列表中,因此不能對其進行設置,也就是說第一次Run時只能使用Automatic的方式由eclipse指定目標設備。不過這種情況影響並不大,假如eclipse此時自己啟動了一個模擬器來作為目標,可以立即關閉模擬器終止該操作,之後該項目應用程序就會出現在列表中可以配置為Manual了:
配置成Manual方式後,在Run一個Android Project的時候將會彈出一個選擇框用於選擇設備,如下:
可以看到我們的真機出現在了正運行的設備列表中,通過選中該項點擊OK或者直接雙擊它就可以將應用程序安裝到真機上進行調試了,當然,如果你需要的是模擬器調試,選中「Launch a new Android Virtual Device」然後選擇需要啟動的模擬器(列表中是已經建立的模擬器,也可以新建模擬器)就可以了。
㈦ Android程序如何(單步)調試
1、設置斷點
在程序裡面放置一個斷點,也就是雙擊需要放置斷點的程序左邊的欄目上。
2、調試
(1)點擊"打開透視圖"按鈕,選擇調試透視圖,則打開調試透視圖界面,然後先設置斷點,按調試按鈕則可以調試程序。
(2)或者直接點擊調試按鈕,那個蟲子樣子的按鈕,然後就會進入調試透視圖的界面。前提你需要是要在程序中設置好斷點。
(3)或者右鍵單擊該程序,選擇debug as(調試方式) -> java application(Java應用程序),則可以調試程序了。前提需要是要在程序中設置好斷點。
3、調試快捷鍵
以debug方式運行java程序後
(F5)單步執行程序,遇到方法時進入;
(F6)單步執行程序,遇到方法時跳過;
(F7)單步執行程序,從當前方法跳出;
(F8)直接執行程序。遇到斷點時暫停;
按F5就是一層層深入的debug相當於剝蔥樣,會進入每個方法內部;
按F6就是在當前函數一步步debug,不理會深層次運作;
按F7就是如果當前進入了某個方法內部,都跳轉到該方法的結尾代碼處;
按F8就是如果後面還有斷點,則運行到下一斷點處,否則運行完程序;
另,在debug時,會有很多有用信息顯示在debug框里,如堆棧信息,需要自己實踐;在程序界面里,滑鼠移到變數上時會有當前變數的屬性值。
4、改變變數的值
在變數窗口中右擊變數,在彈出的菜單中選擇[change value],彈出修改畫面。
改變其值後,按下ok按鈕;這時變數的值就改為修改後的值了。
5、檢查代碼段執行結果
在程序運行的時候,想看看某段程序運行的結果是否正確,或者查看某個變數的值時:
選擇一句或一段代碼,右鍵單擊在彈出的菜單中選擇Watch(創建查看錶達式)項,此時,代碼的執行結果將顯示在Expressions(表達式)窗口中。
選擇一句或一段代碼,右鍵單擊在彈出的菜單中選擇Inspect(檢查)項,可以直接顯示表達式的值。
㈧ 如何使用真機調試android程序
在windows7操作系統android
studio中按照如下步驟使android工程在手機上調試。
1、首先設置手機:打開手機設置-->開發者選項-->勾上USB調試允許USB線調試,用USB線連接PC機與Android手機,手機會自動安裝一些驅動到電腦。完成連接後電腦處出現USB連接圖標,表示連接成功。
2、然後打開android
studio創建的項目,如下圖:
3、點擊工具欄的運行按鈕,如下圖:
4,彈出來的界面選擇插入的手機進行調試,如下圖:
㈨ 如何在真機上調試Android應用程序
1、手機通過數據線連接在電腦上
2、設置android手機為USB調試模式。步驟: menu—> 設置 —> 應用程序 —> 開發 , 選擇【USB調試】
3、如果是window系統,系統會提示安裝驅動:
如果手機連山上了,則在eclipse(device)/android studio(android)裡面會顯示該條設備
當連上之後,有兩種調試模式可供參考,一個是直接進入調試模式,另一個是進程調試(以下均是android studio的截圖)
一、調試模式
二、進程調試
經驗:一般來說,當程序一啟動等等不好一個界面一個步驟的跟蹤的時候,可以採用第一個方式,當只需要調試某一個界面/某一個執行步驟的時候,可以採用第二種方式,當然也可以加上Log日誌來配合調試。