亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android中dumpsys命令用法簡單介紹

2019-12-12 03:28:47
字體:
來源:轉載
供稿:網友

在Android手機上, 通過使用adb shell命令可以進入android系統的shell, 該shell除支持一些常用的標準命令之外,還支持一些和android系統相關的其他命令, 這些命令可以打印出系統當前的狀態信息。 dumpsys就是這樣一個命令。

使用 adb shell 進入命令行, 敲入dumpsys, 打印出的信息超級多, 在我的nexus 5機器上,輸出多達67000行。 首先從打印信息的開始部分看起:

Currently running services:  SurfaceFlinger  accessibility  account  activity  alarm  android.security.keystore  appops  appwidget  assetatlas  audio  backup  battery  batterypropreg  batterystats  bluetooth_manager  clipboard  commontime_management  connectivity  consumer_ir  content  country_detector  cpuinfo  dbinfo  device_policy  devicestoragemonitor  diskstats  display  display.qservice  dreams  drm.drmManager  dropbox  entropy  gfxinfo  hardware  input  input_method  iphonesubinfo  isms  location  lock_settings  media.audio_flinger  media.audio_policy  media.camera  media.player  media_router  meminfo  mount  netpolicy  netstats  network_management  nfc  notification  package  permission  phone  power  print  procstats  samplingprofiler  scheduling_policy  search  sensorservice  serial  servicediscovery  simphonebook  sip  statusbar  telephony.registry  textservices  uimode  updatelock  usagestats  usb  user  vibrator  wallpaper  wifi  wifip2p  window 

由此可知,該命令打印出的是系統當前的所有正在運行的服務的信息。從中可以看到我們常見的一些服務。 activity表示的是ActivityManagerService,用于管理應用程序的四大組件, appops表示的是AppOpsManagerService, 用于管理和配置權限。window表示的是WindowManagerService, 用于管理系統中的窗口, account表示的是AccountManagerService,用于管理系統中的賬戶信息。

在輸出信息中, 緊接著的是每個服務當前的詳細狀態信息,每個服務的狀態信息一般都比較多, 下面列舉一個信息較少的服務信息:

------------------------------------------------------------------------------- DUMP OF SERVICE accessibility: ACCESSIBILITY MANAGER (dumpsys accessibility)  User state[attributes:{id=0, currentUser=true, accessibilityEnabled=false, touchExplorationEnabled=false, displayMagnificationEnabled=false}   services:{}]  ------------------------------------------------------------------------------- 

每個服務信息之間使用橫線間隔。

在開發過程中, 使用dumpsys的最常用的用途是查看ActivityManagerService服務的信息。 下面重點分析ActivityManagerService。 該服務的信息從下面一行開始:

------------------------------------------------------------------------------- DUMP OF SERVICE activity: 

我們知道android應用程序的四大組件中有三個是由intent來驅動的。所以在ActivityManagerService的信息中,專門有一部分來記錄當前待處理的Intent, 稱為pending intent 。格式如下:

ACTIVITY MANAGER PENDING INTENTS (dumpsys activity intents)  * PendingIntentRecord{65ced5f0 com.baidu.BaiduMap broadcastIntent}  uid=10084 packageName=com.baidu.BaiduMap type=broadcastIntent flags=0x0  requestIntent=act=com.baidu.locTest.LocationServer4.1.8  sent=true canceled=false  * PendingIntentRecord{66412b40 com.android.phone broadcastIntent}  uid=1001 packageName=com.android.phone type=broadcastIntent flags=0x0  requestIntent=act=com.android.phone.ACTION_CALL_BACK_FROM_NOTIFICATION dat=tel:153%201571%209213 cmp=com.android.phone/.PhoneGlobals$NotificationBroadcastReceiver 

直接在shell中鍵入dumpsys activity intents, 會直接得到這些信息。 每個待處理的intent在ActivityManagerService內部使用一個PendingIntentRecord對象表示, 并且會顯示出所在應用的包名, 并且會指定該intent是用來發送廣播, 啟動activity或是啟動service。

下面的信息是系統中的broadcast receiver的狀態信息, 從下面一行開始:

------------------------------------------------------------------------------- ACTIVITY MANAGER BROADCAST STATE (dumpsys activity broadcasts) 

直接在shell中鍵入umpsys activity broadcasts, 會直接得到這部分信息。

首先會列出系統中所有注冊的廣播接收者, 格式如下:

Registered Receivers:  * ReceiverList{660f2e40 857 com.android.systemui/10012/u-1 remote:660f2ca0}  app=857:com.android.systemui/u0a12 pid=857 uid=10012 user=-1  Filter #0: BroadcastFilter{660f2ea0}  Action: "android.intent.action.SHOW_BRIGHTNESS_DIALOG"  * ReceiverList{66045cf0 3867 com.meitu.meiyancamera:pushservice/10091/u0 remote:65e756c8}  app=3867:com.meitu.meiyancamera:pushservice/u0a91 pid=3867 uid=10091 user=0  Filter #0: BroadcastFilter{66045d50}  Action: "android.net.conn.CONNECTIVITY_CHANGE" 

之后列出的是位于前臺的歷史廣播, 格式如下:

Historical broadcasts [foreground]:  Historical Broadcast foreground #0:  BroadcastRecord{65610478 u-1 android.intent.action.TIME_TICK} to user -1  Intent { act=android.intent.action.TIME_TICK flg=0x50000014 (has extras) }  extras: Bundle[{android.intent.extra.ALARM_COUNT=1}]  caller=android null pid=-1 uid=1000  dispatchClockTime=Tue Oct 07 10:53:00 GMT+08:00 2014  dispatchTime=-14s534ms finishTime=-14s436ms  resultTo=null resultCode=0 resultData=null  resultAbort=false ordered=true sticky=false initialSticky=false  nextReceiver=10 receiver=null  Receiver #0: BroadcastFilter{6568af00 u0 ReceiverList{65692db8 748 system/1000/u0 local:65b2a730}}  Receiver #1: BroadcastFilter{660c8768 u0 ReceiverList{660c81a8 857 com.android.systemui/10012/u0 remote:660c78c0}}  Receiver #2: BroadcastFilter{65d2d230 u0 ReceiverList{65d2cb20 857 com.android.systemui/10012/u0 remote:65a8bb70}}  Receiver #3: BroadcastFilter{65f042e8 u0 ReceiverList{65f04d90 857 com.android.systemui/10012/u0 remote:65f9f2c0}}  Receiver #4: BroadcastFilter{65a9d5f0 u0 ReceiverList{65affbc8 857 com.android.systemui/10012/u0 remote:65b41d50}}  Receiver #5: BroadcastFilter{6682be08 u0 ReceiverList{6682bda8 857 com.android.systemui/10012/u0 remote:665c2478}}  Receiver #6: BroadcastFilter{667a6c48 u0 ReceiverList{6671f128 857 com.android.systemui/10012/u0 remote:662c4048}}  Receiver #7: BroadcastFilter{66901318 u0 ReceiverList{66949870 11260 com.youku.phone:MMS/10080/u0 remote:6695e528}}  Receiver #8: BroadcastFilter{663a4b60 u0 ReceiverList{663a5148 857 com.android.systemui/10012/u0 remote:663c3530}}  Receiver #9: BroadcastFilter{6633df98 u0 ReceiverList{6633f628 857 com.android.systemui/10012/u0 remote:66370860}} 

然后是位于后臺的歷史廣播,格式如下:

Historical broadcasts [background]: Historical Broadcast background #0:  BroadcastRecord{66430db0 u0 cn.etouch.ecalendar_CN.ETOUCH.ECALENDAR.WEATHER_HAS_UPDATE} to user 0  Intent { act=cn.etouch.ecalendar_CN.ETOUCH.ECALENDAR.WEATHER_HAS_UPDATE flg=0x10 (has extras) }  extras: Bundle[mParcelledData.dataSize=44]  caller=cn.etouch.ecalendar 3036:cn.etouch.ecalendar:remote/u0a140 pid=3036 uid=10140  dispatchClockTime=Tue Oct 07 10:53:00 GMT+08:00 2014  dispatchTime=-14s475ms finishTime=-14s400ms  resultTo=null resultCode=0 resultData=null  nextReceiver=5 receiver=null  Receiver #0: ResolveInfo{66335e40 cn.etouch.ecalendar/.widget.myWidget_weather p=1000 m=0x108000}  priority=1000 preferredOrder=0 match=0x108000 specificIndex=-1 isDefault=false  ActivityInfo:  name=cn.etouch.ecalendar.widget.myWidget_weather  packageName=cn.etouch.ecalendar  labelRes=0x7f06016c nonLocalizedLabel=null icon=0x0  enabled=true exported=true processName=cn.etouch.ecalendar  taskAffinity=cn.etouch.ecalendar targetActivity=null  ApplicationInfo:  packageName=cn.etouch.ecalendar  labelRes=0x7f060042 nonLocalizedLabel=null icon=0x7f0200c5  className=cn.etouch.ecalendar.common.ApplicationManager  processName=cn.etouch.ecalendar  taskAffinity=cn.etouch.ecalendar  uid=10140 flags=0x88be44 theme=0x7f0a0029  requiresSmallestWidthDp=0 compatibleWidthLimitDp=0 largestWidthLimitDp=0  sourceDir=/data/app/cn.etouch.ecalendar-1.apk  seinfo=default  dataDir=/data/data/cn.etouch.ecalendar  enabled=true targetSdkVersion=11  supportsRtl=false 

下面是provider相關的信息, 格式如下:

------------------------------------------------------------------------------- ACTIVITY MANAGER CONTENT PROVIDERS (dumpsys activity providers)  Published single-user content providers (by class):  * ContentProviderRecord{65cd5f60 u0 com.redbend.vdmc/com.redbend.others.NodeProvider}  package=com.redbend.vdmc process=com.redbend.vdmc  proc=ProcessRecord{65d540d8 1018:com.redbend.vdmc/1001}  uid=1001 provider=android.content.ContentProviderProxy@658b6690  singleton=true  authority=com.lge.node  * ContentProviderRecord{65d1b150 u0 com.android.phone/.IccProvider}  package=com.android.phone process=com.android.phone  proc=ProcessRecord{65fe2488 1000:com.android.phone/1001}  uid=1001 provider=android.content.ContentProviderProxy@660cbf38  singleton=true  authority=icc  isSyncable=false multiprocess=true initOrder=0 

直接在命令行鍵入dumpsys activity providers,可以直接得到provider相關的信息。由輸出信息可知, 在AtivityManagerService中,一個provider組件使用一個ContentProviderRecord對象表示。

服務(Service)相關的信息如下:

------------------------------------------------------------------------------- ACTIVITY MANAGER SERVICES (dumpsys activity services)  User 0 active services:  * ServiceRecord{660da0f0 u0 com.android.bluetooth/.hid.HidService}  intent={act=android.bluetooth.IBluetoothInputDevice cmp=com.android.bluetooth/.hid.HidService}  packageName=com.android.bluetooth  processName=com.android.bluetooth  baseDir=/system/app/Bluetooth.apk  dataDir=/data/data/com.android.bluetooth  app=null  createTime=-1d16h27m16s523ms startingBgTimeout=--  lastActivity=-17h20m54s385ms restartTime=-- createdFromFg=false  Bindings:  * IntentBindRecord{660da3e0}:  intent={act=android.bluetooth.IBluetoothInputDevice cmp=com.android.bluetooth/.hid.HidService}  binder=null  requested=false received=false hasBound=false doRebind=false 

在shell中直接鍵入dumpsys activity services命令, 可以直接得到Service信息。

Activity相關的信息格式如下:

------------------------------------------------------------------------------- ACTIVITY MANAGER ACTIVITIES (dumpsys activity activities)  Stack #0:  Task id #1  * TaskRecord{65cc6860 #1 A=com.google.android.googlequicksearchbox U=0 sz=1}  numActivities=1 rootWasReset=true userId=0 mTaskType=1 numFullscreen=1 mOnTopOfHome=true  affinity=com.google.android.googlequicksearchbox  intent={act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10600000 cmp=com.google.android.googlequicksearchbox/com.google.android.launcher.GEL}  realActivity=com.google.android.googlequicksearchbox/com.google.android.launcher.GEL  Activities=[ActivityRecord{66020ee8 u0 com.google.android.googlequicksearchbox/com.google.android.launcher.GEL t1}]  askedCompatMode=false  lastThumbnail=android.graphics.Bitmap@6653bf90 lastDescription=null  lastActiveTime=144235207 (inactive for 1424s)  * Hist #0: ActivityRecord{66020ee8 u0 com.google.android.googlequicksearchbox/com.google.android.launcher.GEL t1}   packageName=com.google.android.googlequicksearchbox processName=com.google.android.googlequicksearchbox   launchedFromUid=0 launchedFromPackage=null userId=0   app=ProcessRecord{66105ac8 1058:com.google.android.googlequicksearchbox/u0a19}   Intent { act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10000000 cmp=com.google.android.googlequicksearchbox/com.google.android.launcher.GEL }   frontOfTask=true task=TaskRecord{65cc6860 #1 A=com.google.android.googlequicksearchbox U=0 sz=1}   taskAffinity=com.google.android.googlequicksearchbox   realActivity=com.google.android.googlequicksearchbox/com.google.android.launcher.GEL   baseDir=/system/priv-app/Velvet.apk   dataDir=/data/user/0/com.google.android.googlequicksearchbox   stateNotNeeded=true componentSpecified=false mActivityType=1   compat={480dpi} labelRes=0x7f0a04c5 icon=0x7f030002 theme=0x7f0e000d   config={1.0 460mcc1mnc zh_CN ldltr sw360dp w360dp h567dp 480dpi nrml port finger -keyb/v/h -nav/h s.11}   launchFailed=false launchCount=0 lastLaunchTime=-17h20m56s529ms   haveState=true icicle=Bundle[mParcelledData.dataSize=12720]   state=STOPPED stopped=true delayedResume=false finishing=false   keysPaused=false inHistory=true visible=false sleeping=true idle=true   fullscreen=true noDisplay=false immersive=false launchMode=2   frozenBeforeDestroy=false thumbnailNeeded=false forceNewConfig=false   mActivityType=HOME_ACTIVITY_TYPE   thumbHolder: 65cc6860 bm=android.graphics.Bitmap@6653bf90 desc=null   waitingVisible=false nowVisible=false lastVisibleTime=-21m53s598ms  Task id #24  * TaskRecord{667de460 #24 A=com.android.systemui U=0 sz=1}  numActivities=1 rootWasReset=false userId=0 mTaskType=2 numFullscreen=1 mOnTopOfHome=true  affinity=com.android.systemui  intent={act=com.android.systemui.recent.action.TOGGLE_RECENTS flg=0x10c00000 cmp=com.android.systemui/.recent.RecentsActivity}  realActivity=com.android.systemui/.recent.RecentsActivity  Activities=[ActivityRecord{6561e970 u0 com.android.systemui/.recent.RecentsActivity t24}]  askedCompatMode=false  lastThumbnail=android.graphics.Bitmap@662b3118 lastDescription=null  lastActiveTime=87755110 (inactive for 57904s)  * Hist #0: ActivityRecord{6561e970 u0 com.android.systemui/.recent.RecentsActivity t24}   packageName=com.android.systemui processName=com.android.systemui   launchedFromUid=10012 launchedFromPackage=com.android.systemui userId=0   app=ProcessRecord{6602d698 857:com.android.systemui/u0a12}   Intent { act=com.android.systemui.recent.action.TOGGLE_RECENTS flg=0x10800000 cmp=com.android.systemui/.recent.RecentsActivity }   frontOfTask=true task=TaskRecord{667de460 #24 A=com.android.systemui U=0 sz=1}   taskAffinity=com.android.systemui   realActivity=com.android.systemui/.recent.RecentsActivity   baseDir=/system/priv-app/SystemUI.apk   dataDir=/data/data/com.android.systemui   stateNotNeeded=false componentSpecified=true mActivityType=2   compat={480dpi} labelRes=0x7f0a0080 icon=0x10804a5 theme=0x7f0e0000   config={1.0 460mcc1mnc zh_CN ldltr sw360dp w360dp h567dp 480dpi nrml port finger -keyb/v/h -nav/h s.9}   launchFailed=false launchCount=0 lastLaunchTime=-9h59m21s658ms   haveState=true icicle=Bundle[mParcelledData.dataSize=44]   state=STOPPED stopped=true delayedResume=false finishing=false   keysPaused=false inHistory=true visible=false sleeping=true idle=true   fullscreen=true noDisplay=false immersive=false launchMode=3   frozenBeforeDestroy=false thumbnailNeeded=false forceNewConfig=false   mActivityType=RECENTS_ACTIVITY_TYPE   thumbHolder: 667de460 bm=android.graphics.Bitmap@662b3118 desc=null   waitingVisible=false nowVisible=false lastVisibleTime=-7h8m31s600ms   Running activities (most recent first):  TaskRecord{65cc6860 #1 A=com.google.android.googlequicksearchbox U=0 sz=1}  Run #1: ActivityRecord{66020ee8 u0 com.google.android.googlequicksearchbox/com.google.android.launcher.GEL t1}  TaskRecord{667de460 #24 A=com.android.systemui U=0 sz=1}  Run #0: ActivityRecord{6561e970 u0 com.android.systemui/.recent.RecentsActivity t24}   mLastPausedActivity: ActivityRecord{66020ee8 u0 com.google.android.googlequicksearchbox/com.google.android.launcher.GEL t1} 

在shell中直接鍵入dumpsys activity activities, 可以直接得到activity的相關信息。

和其他組件相比, Activity的管理比較特殊。 Activity是以棧的形式管理的, 每個棧中存在若干個任務(task), 每個任務又由若干個Activity組成。

上面簡單介紹了ActivityManagerService中的四大組件相關的信息。 關于其他服務中的信息, 由于信息量太大, 無法一一介紹, 請讀者自行查看。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久精品一本久久99精品| 97热在线精品视频在线观看| 亚洲电影免费观看高清完整版| 777国产偷窥盗摄精品视频| 久久这里有精品| 色偷偷偷综合中文字幕;dd| 亚洲片国产一区一级在线观看| 精品国偷自产在线视频| 日韩中文视频免费在线观看| 国产va免费精品高清在线观看| 91精品国产综合久久香蕉| 久久精品在线播放| 日韩一区二区精品视频| 欧美一级电影在线| 欧美在线中文字幕| 色婷婷综合成人av| 欧美高清自拍一区| 亚洲美女自拍视频| 亚洲女人被黑人巨大进入| 亚洲的天堂在线中文字幕| 国产精品视频在线播放| 国产精品美女av| 国产一区深夜福利| xxxx欧美18另类的高清| 日韩亚洲一区二区| 国产+成+人+亚洲欧洲| www.久久撸.com| 国产日韩精品一区二区| 欧美大肥婆大肥bbbbb| 日本欧美爱爱爱| 91理论片午午论夜理片久久| 精品国产31久久久久久| 亚洲白拍色综合图区| 精品国产一区二区三区久久久狼| 亚洲网站在线观看| 亚洲国产精品99| 国产日韩换脸av一区在线观看| 中文字幕欧美国内| 国产精品三级久久久久久电影| 亚洲国产精品人人爽夜夜爽| 国产精品久久久久久亚洲调教| 亚洲图片在区色| 国产精品1区2区在线观看| 永久免费毛片在线播放不卡| 欧美寡妇偷汉性猛交| 热re91久久精品国99热蜜臀| 亚洲欧美日韩一区二区三区在线| 欧美激情视频网| 国产精品海角社区在线观看| 国产999精品| 国产成人一区二区在线| 成人深夜直播免费观看| 奇米一区二区三区四区久久| 亚洲图片在线综合| 亚洲免费影视第一页| 国产精品视频导航| 亚洲大胆人体av| 色综合视频网站| 黑人狂躁日本妞一区二区三区| 久久人人爽人人| 热re91久久精品国99热蜜臀| 精品久久久国产精品999| 日韩高清人体午夜| 国产精品视频资源| 日韩精品视频在线| 国产精品99久久久久久人| 亚洲免费av电影| 欧美国产日韩一区| 欧美激情综合色综合啪啪五月| 日韩av在线网站| 欧美极品少妇xxxxⅹ喷水| 中文字幕亚洲激情| 在线观看精品自拍私拍| 91国产视频在线播放| 在线播放国产一区中文字幕剧情欧美| 狠狠躁18三区二区一区| 国产精品美女免费看| 欧美专区日韩视频| 亚洲国产精品悠悠久久琪琪| 国产极品jizzhd欧美| 亚洲黄色av女优在线观看| 色在人av网站天堂精品| 日本欧美国产在线| 亚洲精品不卡在线| 久久精品夜夜夜夜夜久久| 中文字幕国产精品久久| 亚洲日本欧美中文幕| 亚洲人成毛片在线播放| 亚洲午夜未删减在线观看| 九九热这里只有精品6| 久久男人的天堂| 中文字幕精品影院| 日韩精品高清在线观看| 国产日韩亚洲欧美| 精品亚洲一区二区三区| 国产日韩在线一区| 精品美女永久免费视频| 91视频国产一区| 成人性生交大片免费看小说| 成人精品视频99在线观看免费| 日韩av一区二区在线观看| 欧美激情网站在线观看| 亚洲国产精品福利| 欧洲s码亚洲m码精品一区| 国产日韩中文字幕| 国产日韩精品视频| 久久99视频免费| 亚洲精品网站在线播放gif| 亚洲欧洲自拍偷拍| 黑人巨大精品欧美一区二区免费| 国产美女久久久| 亚洲最大福利视频| 亚洲深夜福利在线| 欧美日韩成人在线视频| 日韩精品在线观看网站| 久久久久久久久久婷婷| 欧美国产日韩一区二区在线观看| 精品无码久久久久久国产| 国产亚洲欧美另类中文| 久久99亚洲精品| 黑人巨大精品欧美一区二区三区| 国产精品wwww| 国产有码在线一区二区视频| 在线一区二区日韩| 欧美日韩免费观看中文| 欧美精品在线网站| 亚洲激情在线视频| 国产午夜精品免费一区二区三区| 国产不卡一区二区在线播放| 日韩影视在线观看| 欧美性做爰毛片| 91久久精品视频| 中日韩美女免费视频网址在线观看| 亚洲精品按摩视频| 精品国产区一区二区三区在线观看| 亚洲伦理中文字幕| 成人久久精品视频| 久久不射热爱视频精品| 成人a在线观看| 97在线视频国产| 欧美成人免费全部| 91九色综合久久| 国产精选久久久久久| 亚洲九九九在线观看| 日韩免费黄色av| 97免费在线视频| 国模精品一区二区三区色天香| 国产欧美一区二区| 欧美在线欧美在线| 中文字幕视频在线免费欧美日韩综合在线看| 日韩在线观看成人| 欧美一级淫片aaaaaaa视频| 日韩一区二区在线视频| 亚洲成年网站在线观看| 日韩成人在线播放| 精品福利在线观看| 国产啪精品视频网站| 日韩精品中文字幕在线观看| 欧美激情一区二区三级高清视频| 国产精品久久久久久久久男| 国产精品入口夜色视频大尺度| 91久久精品视频| 亚洲国产精彩中文乱码av在线播放| 国产成人精品视|