版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Android物聯(lián)網(wǎng)應(yīng)用程序開(kāi)發(fā)資源轉(zhuǎn)化系統(tǒng)教材遼寧輕工職業(yè)學(xué)院遼寧輕工職業(yè)學(xué)院任務(wù)實(shí)現(xiàn)知識(shí)準(zhǔn)備任務(wù)目標(biāo)目 錄項(xiàng)目目標(biāo)遼寧輕工職業(yè)學(xué)院 項(xiàng)目9 程序調(diào)試遼寧輕工職業(yè)學(xué)院任務(wù)1 DDMS應(yīng)用調(diào)試透視圖遼寧輕工職業(yè)學(xué)院【任務(wù)目標(biāo)】掌握應(yīng)用DDMS透視圖進(jìn)行調(diào)試的方法1. DDMS透視圖簡(jiǎn)介遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】 在ADT插件中還提供了一個(gè)DDMS(Dalvik Debug Monitor Service)透視圖。在DDMS透視圖中,可以完成查看Dalvik操作系統(tǒng)的進(jìn)程、查看和修改Android模擬器及SD卡中的文件和目錄內(nèi)容等操作。單擊【W(wǎng)indow】【Show Perspective】【
2、DDMS】菜單項(xiàng)可以顯示如下圖所示的DDMS透視圖。2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】 在安卓平臺(tái)上,每個(gè)應(yīng)用都運(yùn)行在自己的進(jìn)程上,同時(shí)每個(gè)應(yīng)用也都運(yùn)行在自己的虛擬機(jī)(VM)上。每個(gè)VM公布了唯一的端口號(hào)以供調(diào)試器連接。 當(dāng)DDMS啟動(dòng)后,會(huì)連接到adb。當(dāng)有設(shè)備連接上,VM監(jiān)測(cè)服務(wù)就在adb和DDMS之間創(chuàng)建,它會(huì)通知DDMS 設(shè)備上的VM是啟動(dòng)了還是終止了。一旦VM是運(yùn)行的,DDMS就獲取VM的進(jìn)程ID(pid),通過(guò)adb和設(shè)備上的adb守護(hù)進(jìn)程(adbd)建立到VM調(diào)試器的連接。到此,DDMS就可以使用約定的線協(xié)議與VM通信。2. DDMS與調(diào)試器交互的方法遼
3、寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】 DDMS給設(shè)備上的每個(gè)VM分配一個(gè)調(diào)試端口。通常,DDMS分配的第一個(gè)可調(diào)試端口號(hào)是8600,下一個(gè)是8601,依次往下類(lèi)推。當(dāng)調(diào)試器連接到已分配的一個(gè)端口時(shí),VM上的所有通信都會(huì)被關(guān)聯(lián)到調(diào)試器。一個(gè)調(diào)試器只能連接一個(gè)單獨(dú)的端口,但是DDMS同時(shí)可以處理多個(gè)連接的調(diào)試器。 默認(rèn)的,DDMS也會(huì)監(jiān)聽(tīng)DDMS的“基本端口”(默認(rèn)為8700)?;径丝谑且粋€(gè)端口轉(zhuǎn)發(fā)端口,可以通過(guò)8700端口接受來(lái)自VM所有調(diào)試端口的通信并可以發(fā)送信息到調(diào)試器。這就允許你將調(diào)試器連接到8700端口,然后可以調(diào)試所有設(shè)備上的虛擬機(jī)。在DDMS設(shè)備視圖下,轉(zhuǎn)發(fā)的通信可以被當(dāng)前所選進(jìn)程終止。2.
4、 DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】 接下來(lái)的屏幕截圖會(huì)在Eclipse中顯示標(biāo)準(zhǔn)的DDMS屏幕視圖。如果你是從命令行啟動(dòng)的DDMS,截圖會(huì)略有不同,但絕大部分功能是相同的。注意這個(gè)特殊進(jìn)程,com.android.email它在模擬器上運(yùn)行時(shí)的調(diào)試端口是8700,而分配給它的端口是8606。這就表明DDMS當(dāng)前將8606端口轉(zhuǎn)發(fā)到靜態(tài)調(diào)試端口8700。 如果你不用Eclipse和ADT,請(qǐng)閱讀 Configuring your IDE to attach to the debugging port來(lái)獲取更多連接到調(diào)試器的信息。在Dalvik虛擬機(jī)中調(diào)試的應(yīng)用和在其他虛擬機(jī)
5、中的應(yīng)用一樣運(yùn)行。然而,當(dāng)單步跳出同步代碼時(shí),“當(dāng)前位置”指針可能一下跳到方法中的最后位置。(1)查看進(jìn)程的堆使用情況2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】DDMS允許查看進(jìn)程堆內(nèi)存的使用情況。在程序的特定執(zhí)行時(shí)間跟蹤堆使用情況是非常有用的信息。(2)查看堆使用的步驟:1)在設(shè)備選項(xiàng),選擇要查看堆使用信息的進(jìn)程。2)點(diǎn)擊 Update Heap 按鈕獲取進(jìn)程的堆信息。3)在堆選項(xiàng)中,點(diǎn)擊Cause GC來(lái)激活垃圾收集,它會(huì)讓堆數(shù)據(jù)收集變得可用。當(dāng)操作完成,會(huì)看到一組對(duì)象類(lèi)型和每種類(lèi)型已分配的內(nèi)存。再次點(diǎn)擊Cause GC就可以刷新數(shù)據(jù)。2. DDMS與調(diào)試器交互的方法遼寧
6、輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】4)點(diǎn)擊一個(gè)對(duì)象類(lèi)型列表中看到一個(gè)條形圖顯示對(duì)象的數(shù)量分配給一個(gè)特定的內(nèi)存字節(jié)大小。(3)跟蹤對(duì)象的內(nèi)存分配DDMS提供一個(gè)很有用的功能,它跟蹤正在分配內(nèi)存的對(duì)象和查看那些類(lèi)和線程正分配對(duì)象。這樣,在應(yīng)用中執(zhí)行特定操作時(shí)你就可以實(shí)時(shí)跟蹤哪些對(duì)象正在被分配資源。分析影響到應(yīng)用性能的內(nèi)存使用是很有價(jià)值的信息。(4)跟蹤內(nèi)存的對(duì)象分配:1)在設(shè)備選項(xiàng),選擇需要跟蹤內(nèi)存分配的進(jìn)程。2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】 2)在分配內(nèi)存選項(xiàng),點(diǎn)擊Start Tracking按鈕開(kāi)始分配跟蹤。這時(shí),任何在應(yīng)用中的操作都會(huì)被跟蹤。 3)點(diǎn)擊Get Allocat
7、ions來(lái)查看從點(diǎn)擊Start Tracking按鈕以來(lái)已經(jīng)分配了的對(duì)象列表。再點(diǎn)擊Get Allocations就會(huì)將已分配的新對(duì)象添加到列表中。 4)如果要停止跟蹤或清除數(shù)據(jù)后重新開(kāi)始,點(diǎn)擊Stop Tracking按鈕。 5)點(diǎn)擊列表中的特定行就可以看到更詳細(xì)的信息,比如已分配的對(duì)象的方法和代碼行號(hào)。2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】(5)使用模擬器或設(shè)備的文件系統(tǒng) DDMS提供了文件系統(tǒng)選項(xiàng),它允許查看、復(fù)制和刪除設(shè)備上的文件。這個(gè)功能對(duì)于檢查應(yīng)用創(chuàng)建的文件或向設(shè)備中導(dǎo)入文件和從設(shè)備導(dǎo)出文件來(lái)說(shuō),非常有用。1)在設(shè)備選項(xiàng),選擇要查看文件系統(tǒng)的模擬器。2)要從設(shè)
8、備中復(fù)制文件,先在文件瀏覽中定位文件,然后點(diǎn)擊Pull file按鈕。3)要把文件復(fù)制到設(shè)備中,點(diǎn)擊文件瀏覽選項(xiàng)中的Push file按鈕(6)查看線程信息DDMS中的線程選項(xiàng)顯示了所選進(jìn)程中正在運(yùn)行的線程信息。1)在設(shè)備選項(xiàng),選擇要查看的線程所在的進(jìn)程。2)點(diǎn)擊Update Threads按鈕。3)在線程選項(xiàng)就可以看到所選進(jìn)程的線程信息了2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】(7)開(kāi)始方法分析 方法分析是一種對(duì)方法的某些數(shù)據(jù)進(jìn)行跟蹤的手段,例如:調(diào)用次數(shù)、執(zhí)行時(shí)間和執(zhí)行方法所用時(shí)間。如果想更精確的控制在那些地方收集分析數(shù)據(jù),使用startMethodTracing()和
9、stopMethodTracing()方法。要獲得更多關(guān)于產(chǎn)生跟蹤日志的信息,請(qǐng)查看Profiling and Debugging UIs.在DDMS中開(kāi)始方法分析之前,注意以下限制情況:安卓1.5版本的設(shè)備不支持安卓2.1和更早的版本必須已插入SD卡,并且應(yīng)用有寫(xiě)SD卡的權(quán)限安卓2.2和以后的設(shè)備不需要已插入SD卡。跟蹤日志文件直接輸出到開(kāi)發(fā)設(shè)備上。2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】開(kāi)始方法分析的步驟1)在設(shè)備選項(xiàng),選擇要進(jìn)行方法分析的進(jìn)程2)點(diǎn)擊Start Method Profiling按鈕。3)與應(yīng)用進(jìn)行交互,開(kāi)始要分析的方法4)點(diǎn)擊 Stop Method
10、Profiling按鈕。DDMS停止分析應(yīng)用并打開(kāi)Traceview,它包含了在點(diǎn)擊Start Method Profiling和Stop Method Profiling之間方法分析收集到的信息。2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】(8)使用網(wǎng)絡(luò)通信工具在安卓4.0中,DDMS(Dalvik調(diào)試監(jiān)控服務(wù))包含了詳細(xì)的網(wǎng)絡(luò)使用選項(xiàng),可以跟蹤應(yīng)用的網(wǎng)絡(luò)請(qǐng)求。使用這個(gè)工具,可以監(jiān)測(cè)應(yīng)用何時(shí)以及如何傳輸數(shù)據(jù),并且能根據(jù)這個(gè)適當(dāng)?shù)膬?yōu)化底層代碼。在使用前,也可以通過(guò)添加標(biāo)簽到網(wǎng)絡(luò)套接口來(lái)區(qū)分不同的通信類(lèi)型。為了更好的確認(rèn)導(dǎo)致傳輸峰值的原因,TrafficStats API 允許使
11、用 setThreadStatsTag()方法在線程中標(biāo)識(shí)數(shù)據(jù)傳輸,接著用tagSocket()和untagSocket()可以手動(dòng)標(biāo)識(shí)(或去標(biāo)識(shí))不同的套接口。例如:2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】TrafficStats.setThreadStatsTag(0 xF00D);TrafficStats.tagSocket(outputSocket);/ Transfer data using socketTrafficStats.untagSocket(outputSocket); 或者,平臺(tái)中的Apache HttpClient 和URLConnection 的
12、API在活動(dòng)的標(biāo)識(shí)(被getThreadStatsTag()確定過(guò)的標(biāo)識(shí))上會(huì)自動(dòng)標(biāo)識(shí)內(nèi)部套接口。當(dāng)通過(guò)活動(dòng)池回收時(shí),這些API會(huì)正確的標(biāo)識(shí)/去標(biāo)識(shí)套接口。TrafficStats.setThreadStatsTag(0 xF00D); try / Make network request using HttpClient.execute() finally TrafficStats.clearThreadStatsTag();2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】(9)使用日志 LogCat集成在DDMS中,可以輸出使用 Log 類(lèi)打印的消息和其它系統(tǒng)的消息,例如異常拋
13、出時(shí)的堆棧跟蹤消息。參閱Reading and Writing Log Messages 獲得更多關(guān)于將消息記錄到LogCat的信息。當(dāng)設(shè)置完日志后,使用下列按鈕就可以用LogCat來(lái)過(guò)濾特定消息:VerboseDebugInfoWarnError2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】 也可以通過(guò)自定義設(shè)置的過(guò)濾器來(lái)獲得更詳細(xì)的信息,例如可以用日志標(biāo)簽或進(jìn)程ID來(lái)生成日志信息。 (10)模擬電話操作和位置 模擬器控制選項(xiàng)可以模擬手機(jī)的語(yǔ)音和數(shù)據(jù)網(wǎng)絡(luò)狀態(tài)。如果你想在不同網(wǎng)絡(luò)環(huán)境下測(cè)試應(yīng)用的健壯性,這會(huì)很有用。 (11)改變網(wǎng)絡(luò)狀態(tài)、網(wǎng)速和網(wǎng)絡(luò)延遲 模擬器控制選項(xiàng)卡的電話狀態(tài)
14、部分可以改變手機(jī)的網(wǎng)絡(luò)狀態(tài)、網(wǎng)速和網(wǎng)絡(luò)延遲。下列選項(xiàng)可供使用并且設(shè)置后立即有效:Voice - unregistered home roaming searching deniedData - unregistered home roaming searching deniedSpeed - Full GSM HSCSD GPRS EDGE UMTS HSDPA2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】Latency - GPRS EDGE UMTS(12)模擬來(lái)電或短信 模擬器控制選項(xiàng)卡的電話部分可以模擬電話和短信。這對(duì)測(cè)試應(yīng)用在回應(yīng)來(lái)電和短信方面的健壯性很有用。有如下操作
15、:Voice - 在 ing number 框輸入號(hào)碼,點(diǎn)擊Call就給模擬器或電話設(shè)備撥打電話。點(diǎn)擊Hang up按鈕就掛掉電話。SMS - 在 ing number 框輸入號(hào)碼在Message 輸入短信內(nèi)容,點(diǎn)擊Send按鈕發(fā)送短信。2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】(13)設(shè)置電話位置 如果應(yīng)用需要使用電話位置,使用DDMS可以給電話設(shè)備或AVD(安卓虛擬設(shè)備)設(shè)置模擬位置。如果想測(cè)試應(yīng)用不同方面的跟位置有關(guān)的特性又不必實(shí)際改變物理位置,這會(huì)很有用。下面是可用的定位數(shù)據(jù)類(lèi)型: Manual - 通過(guò)手動(dòng)指定的十進(jìn)制或六十進(jìn)制的經(jīng)度和緯度值來(lái)設(shè)置位置 GPX - GPS 交互文件 KML - Keyhole 標(biāo)記語(yǔ)言文件 要獲得更詳細(xì)的模擬位置數(shù)據(jù)的信息,請(qǐng)查看Location Strategies2. DDMS與調(diào)試器交互的方法遼寧輕工職業(yè)學(xué)院【知識(shí)準(zhǔn)備】 (14)文件瀏覽器 為檢查應(yīng)用運(yùn)行過(guò)程或結(jié)果,DDMS透視圖還提
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度舊環(huán)保設(shè)備買(mǎi)賣(mài)與運(yùn)營(yíng)維護(hù)合同3篇
- 二零二五年度建筑廢棄物綜合利用合同3篇
- 計(jì)算思維課程設(shè)計(jì)
- 海南醫(yī)學(xué)院《生物醫(yī)學(xué)工程倫理及政策法規(guī)》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年度抵債資產(chǎn)轉(zhuǎn)讓與受讓合同3篇
- 海南師范大學(xué)《武術(shù)教學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 照明電氣設(shè)計(jì)課程設(shè)計(jì)
- 2025年度生態(tài)農(nóng)業(yè)園區(qū)綠化種植與生態(tài)保護(hù)合同3篇
- 二零二五年度安置房租賃中介服務(wù)合同
- 算法課程設(shè)計(jì)2048
- 小學(xué)五年級(jí)上冊(cè)數(shù)學(xué)寒假作業(yè)每日一練
- 三年級(jí)上冊(cè)語(yǔ)文期末考試作文押題預(yù)測(cè)
- 2025年醫(yī)院院感工作計(jì)劃
- 2024年陜西省安全員《A證》考試題庫(kù)及答案
- 《道路車(chē)輛 48V供電電壓的電氣及電子部件 電性能要求和試驗(yàn)方法》文本以及編制說(shuō)明
- 供貨進(jìn)度計(jì)劃及保證措施
- 北師大版二年級(jí)《數(shù)學(xué)》下冊(cè)單元測(cè)試卷
- 十八項(xiàng)醫(yī)療核心制度考試題與答案
- 杵針療法課件
- 船形烏頭提取工藝優(yōu)化
- 軟件企業(yè)戰(zhàn)略規(guī)劃
評(píng)論
0/150
提交評(píng)論