日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > Android >内容正文

Android

21.9.22 Android Monitor

發(fā)布時(shí)間:2023/12/20 Android 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 21.9.22 Android Monitor 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

特別申明:本文僅供自己學(xué)習(xí)記錄使用,所寫(xiě)內(nèi)容來(lái)自各網(wǎng)頁(yè),如需轉(zhuǎn)載自己去查找內(nèi)容出處。如有侵權(quán)請(qǐng)聯(lián)系在下,評(píng)論、私信等不論。

目錄

一、Android Monitor

1.DDMS概念

2.ddms功能

1.Thread:查看進(jìn)程中線程情況。

2.Heap

3.File Exporler:File Exporler文件瀏覽器

?4.查看特定界面的展示及布局元素構(gòu)成

?5.Devices

6.Emulator Control

7、Screen captrue:截屏操作

8.LogCat

9.Dump HPROF file

10.原文鏈接


一、Android Monitor

1.DDMS概念

DDMS 的全稱是Dalvik Debug Monitor Service,是 Android 開(kāi)發(fā)環(huán)境中的Dalvik虛擬機(jī)調(diào)試監(jiān)控服務(wù)。
它為我們提供例如:為測(cè)試設(shè)備截屏,針對(duì)特定的進(jìn)程查看正在運(yùn)行的線程以及堆信息、Logcat、廣播狀態(tài)信息、模擬電話呼叫、接收SMS、虛擬地理坐標(biāo)等等。
在集成開(kāi)發(fā)環(huán)境中,有DDMS控制臺(tái)窗口。如,MyEclipse中,有個(gè)叫DDMS的Console。

?打開(kāi)ddms
1、找到Android Device Moniitor


2、如果未下載便會(huì)出現(xiàn)下載界面,下載好即可打開(kāi)ddms

2.ddms功能

1.Thread:查看進(jìn)程中線程情況。

做線程分析,如果發(fā)現(xiàn)有這樣的提示


“Thread updates not enabled for selected client(use toobar button to enable)”

?則需要進(jìn)行以下操作:
Windows->Preferences->Android->DDMS -> ‘Thread Updates
Enabled by Default’
重啟ADM即可。

2.Heap

查看應(yīng)用中內(nèi)存使用情況。

Retained Size(包括直接引用的和間接引用的內(nèi)存)

2.1?Start Allocaton Tracking

開(kāi)始分配追蹤,第一次點(diǎn)擊可以指定追蹤內(nèi)存的開(kāi)始位置,第二次點(diǎn)擊可以結(jié)束追蹤的位置。

3.File Exporler:File Exporler文件瀏覽器

查看Android模擬器中的文件,可以很方便的導(dǎo)入/出文件。例如下圖就是文件查看,在這里顯示當(dāng)前模擬器的所有文件

?

?
4.查看特定界面的展示及布局元素構(gòu)成

右邊的代碼部分可以查看布局詳情


5.Devices

查看到所有與DDMS連接的模擬器詳細(xì)信息,以及每個(gè)模擬器正在運(yùn)行的APP進(jìn)程,每個(gè)進(jìn)程最右邊相對(duì)應(yīng)的是與調(diào)試器鏈接的端口。

6.Emulator Control

實(shí)現(xiàn)對(duì)模擬器的控制,如:接聽(tīng)電話,根據(jù)選項(xiàng)模擬各種不同網(wǎng)絡(luò)情況,模擬短信發(fā)送及虛擬地址坐標(biāo)用于測(cè)試GPS功能等。

7、Screen captrue:截屏操作

在這里還提供了截圖功能(截圖的是功能界面例如上幾個(gè)界面)

8.LogCat

查看日志輸入信息,可以對(duì)日志輸入進(jìn)行Filter過(guò)濾一些調(diào)試的信息篩選查看等。?

9.Dump HPROF file

點(diǎn)擊DDMS工具條上面的Dump HPROF文件按鈕,選擇文件存儲(chǔ)位置,然后在運(yùn)行hprof-conv。可以用MAT分析heap dumps啟 動(dòng)MAT然后加載剛才我們生成的HPROF文件。MAT是一個(gè)強(qiáng)大的工具,講述它所有的特性超出了本文的范圍,所以我只想演示一種可以用來(lái)檢測(cè) 泄露的方法:直方圖(Histogram)視圖。它顯示了一個(gè)可以排序的類實(shí)例的列表,內(nèi)容包括:shallow heap(所有實(shí)例的內(nèi)存使用總和),或者retained heap(所有類實(shí)例被分配的內(nèi)存總和,里面也包括他們所有引用的對(duì)象)等。

10.原文鏈接? ??必看參考

11.GC Roots

11.1 對(duì)象存活的判定:
當(dāng)一個(gè)對(duì)象不會(huì)再被使用的時(shí)候,我們會(huì)說(shuō)這對(duì)象已經(jīng)死亡。對(duì)象何時(shí)死亡,寫(xiě)程序的人應(yīng)當(dāng)是最清楚的。如果計(jì)算機(jī)也要弄清楚這件事情,就需要使用一些方法來(lái)進(jìn)行對(duì)象存活判定,常見(jiàn)的方法有引用計(jì)數(shù)(Reference Counting)和有可達(dá)性分析(Reachability Analysis)兩種。

11.2 引用計(jì)數(shù)算法的大致思想是給對(duì)象中添加一個(gè)引用計(jì)數(shù)器,每當(dāng)有一個(gè)地方引用它時(shí),計(jì)數(shù)器值就加1;當(dāng)引用失效時(shí),計(jì)數(shù)器值就減1;任何時(shí)刻計(jì)數(shù)器為0的對(duì)象就是不可能再被使用的。
Java語(yǔ)言里面沒(méi)有選用引用計(jì)數(shù)算法來(lái)管理內(nèi)存,其中最主要原因是它沒(méi)有一個(gè)優(yōu)雅的方案解決對(duì)象之間相互循環(huán)引用的問(wèn)題:
當(dāng)兩個(gè)對(duì)象互相引用,即使它們都無(wú)法被外界使用時(shí),它們的引用計(jì)數(shù)器也不會(huì)為0。

11.3 可達(dá)性算法的基本思路就是通過(guò)一系列的稱為GC根節(jié)點(diǎn)(GC Roots)的對(duì)象作為起始點(diǎn),從這些節(jié)點(diǎn)開(kāi)始進(jìn)行向下搜索,搜索所走過(guò)的路徑成為引用鏈(Reference Chain),當(dāng)一個(gè)對(duì)象到GC Roots沒(méi)有任何引用鏈相連(用圖論的話來(lái)說(shuō)就是從GC Roots到這個(gè)對(duì)象不可達(dá))時(shí),則證明此對(duì)象是不可用的。

11.4 Java中可以作為GC Roots的對(duì)象


  • 虛擬機(jī)棧(棧幀中的本地變量表)中引用的對(duì)象
  • 方法區(qū)中類靜態(tài)屬性引用的對(duì)象
  • 方法區(qū)中常量引用的對(duì)象
  • 本地方法棧中JNI(即一般說(shuō)的native方法)中引用的對(duì)象
  • ? ? ? ? ?必看參考

    總結(jié)

    以上是生活随笔為你收集整理的21.9.22 Android Monitor的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。