天天看點

Android基礎#16:Android利用adb bugreport擷取裝置運作資訊

    了解和熟悉你的裝置資訊,cpu資訊,記憶體資訊,視窗資訊。-----箴言-----

内容簡介:

在Android中,除了可以用adb logcat 來檢視日志外,還可以用adb bugreport來儲存裝置運作相關資訊。

包括記憶體資訊,CPU資訊,虛拟記憶體狀态,版本相關資訊,目前Window Manager state...等等。

對于愛好研究手機系統資訊的朋友,可以參考一下這種方式。

實踐:

以HTC Hero report 為例(是的,HTC Hero),

由于檔案比較大,這裡隻截取部分資訊(全部資訊将上傳到資源中,名為HTC_Hero_info.txt).

詳細資訊如下:

adb server is out of date.  killing...
* daemon started successfully *
========================================================

== dumpstate

========================================================

------ MEMORY INFO ------

MemTotal:       197040 kB

MemFree:          2792 kB

Buffers:           320 kB

Cached:          73388 kB

SwapCached:          0 kB

Active:         152920 kB

Inactive:        24696 kB

SwapTotal:           0 kB

SwapFree:            0 kB

Dirty:               0 kB

Writeback:           0 kB

AnonPages:      103948 kB

Mapped:          46280 kB

Slab:             5184 kB

SReclaimable:     1412 kB

SUnreclaim:       3772 kB

PageTables:       7016 kB

NFS_Unstable:        0 kB

Bounce:              0 kB

WritebackTmp:        0 kB

CommitLimit:     98520 kB

Committed_AS:  2116092 kB

VmallocTotal:   319488 kB

VmallocUsed:     76164 kB

VmallocChunk:   207868 kB



------ CPU INFO ------







User 21%, System 33%, IOW 15%, IRQ 0%

User 38 + Nice 0 + Sys 58 + Idle 50 + IOW 27 + IRQ 0 + SIRQ 0 = 173



  PID   TID CPU% S     VSS     RSS UID      Thread          Proc

  785   785  36% R    988K    444K shell    top             top

   82    90   5% S 187652K  39540K system   er.ServerThread system_server

   82   132   5% S 187652K  39540K system   WindowManagerPo system_server

   82    93   4% S 187652K  39540K system   ProcessStats    system_server

   20    20   1% S      0K      0K root     kswapd0        

   82   129   0% S 187652K  39540K system   AlarmManager    system_server

   82   406   0% S 187652K  39540K system   Binder Thread # system_server

    8     8   0% S      0K      0K root     early_suspend  

    9     9   0% S      0K      0K root     kblockd/0      

   10    10   0% S      0K      0K root     kmmcd          

   11    11   0% S      0K      0K root     btaddconn      

   12    12   0% S      0K      0K root     btdelconn      

   13    13   0% S      0K      0K root     kondemand/0    

   14    14   0% S      0K      0K root     qmi            

   15    15   0% D      0K      0K root     rpcrouter      

   16    16   0% S      0K      0K root     detection/0    

   17    17   0% S      0K      0K root     krpcserversd   

   18    18   0% S      0K      0K root     pdflush        

   19    19   0% S      0K      0K root     pdflush        

   21    21   0% S      0K      0K root     aio/0          

   22    22   0% S      0K      0K root     panel_on/0     

   23    23   0% S      0K      0K root     cabc_work_q    

   24    24   0% S      0K      0K root     kadspd         

   25    25   0% S      0K      0K root     mtdblockd      

   26    26   0% S      0K      0K root     USB mass_storag

   27    27   0% S      0K      0K root     synaptics_wq   

   29    29   0% S      0K      0K root     kstriped       

   30    30   0% S      0K      0K root     krfcommd       

   31    31   0% S      0K      0K root     mmcqd          

   32    32   0% S    808K    268K system   servicemanager  /system/bin/servicemanager

------ PROCRANK ------

execv /system/xbin/procrank returned -1

------ VIRTUAL MEMORY STATS ------

nr_free_pages 748

nr_inactive 6025

nr_active 38185

nr_anon_pages 25997

nr_mapped 11447

nr_file_pages 18213

nr_dirty 0

nr_writeback 0

nr_slab_reclaimable 423

nr_slab_unreclaimable 945

nr_page_table_pages 1758

nr_unstable 0

nr_bounce 0

nr_vmscan_write 0

nr_writeback_temp 0

pgpgin 3674

pgpgout 31
......


========================================================

== build.prop

========================================================

------ VERSION INFO ------

currenttime=Fri Jan  8 15:06:59 HKT 2010

kernel.version=Linux version 2.6.27-8dd6deee ([email protected]) (gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) ) #722 PREEMPT Wed Aug 19 18:12:40 CST 2009



kernel.cmdline=#

# customize.prop for device

#

# begin build properties

# autogenerated by buildinfo.sh

ro.build.id=CUPCAKE

ro.build.display.id=CUPCAKE.eng.u70000.20090729.204255

ro.build.version.incremental=eng.u70000.20090729.204255

ro.build.version.sdk=3

ro.build.version.release=1.5

ro.build.date=Wed Jul 29 20:43:53 CST 2009

ro.build.date.utc=1248871433

ro.build.type=user

ro.build.user=u70000

ro.build.host=Android-X02

ro.build.tags=release-keys

ro.build.team=1.0_g3_sense

ro.product.model=HTC Hero

ro.product.brand=hiapk.com

ro.product.name=htc_hero

ro.product.device=hero

ro.product.board=hero

ro.product.manufacturer=HTC

ro.product.locale.language=zh

ro.product.locale.region=CN

ro.board.platform=msm7k

# ro.build.product is obsolete; use ro.product.device

ro.build.product=hero

# Do not try to parse ro.build.description or .fingerprint

ro.build.description=1.79.482.3 146733 CL#49365 release-keys

ro.build.changelist=49365

ro.product.ua=

ro.build.fingerprint=generic/htc_hero/hero/hero:1.5/1.79.482.3/49365:user/release-keys

# end build properties

#

# system.prop for device

#



rild.libpath=/system/lib/libhtc_ril.so

ro.ril.hep = 1

wifi.interface = tiwlan0

ro.ril.htcmaskw1.bitmask = 4294967295

ro.ril.htcmaskw1 = 14449

ro.ril.hsupa.category = 5



# Time between scans in seconds. Keep it high to minimize battery drain.

# This only affects the case in which there are remembered access points,

# but none are in range.

wifi.supplicant_scan_interval = 45



# density in DPI of the LCD of this board. This is used to scale the UI

# appropriately. If this property is not defined, the default value is 160 dpi.

ro.sf.lcd_density = 160

ro.com.google.locationfeatures=1



# For SD storage insert notification sound

persist.service.mount.playsnd=1



# For auto backlight default value

settings.display.autobacklight=1



# For brightness default value

settings.display.brightness=102



# For the AGPS default value

ro.ril.def.agps.mode = 2



#

# ADDITIONAL_BUILD_PROPERTIES

#

ro.url.legal=http://www.google.com/intl/%s/mobile/android/basic/phone-legal.html

ro.url.legal.android_privacy=http://www.google.com/intl/%s/mobile/android/basic/privacy.html

ro.com.google.locationfeatures=1

ro.com.google.networklocation=1

ro.config.ringtone=Innovation.mp3

ro.config.notification_sound=Color.mp3

ro.config.alarm_sound=Light.mp3

ro.config.cal_notification=Vector.mp3

ro.config.msg_notification=Ascend.mp3

ro.setupwizard.mode=DISABLED

ro.com.google.clientidbase=android-htc

ro.config.sync=yes

net.bt.name=Android

dalvik.vm.stack-trace-file=/data/anr/traces.txt

gsm.operator.numeri0=310260

gsm.sim.operator.numeri0=310260

gsm.operator.iso-countr0=us

gsm.operator.alph0=T-Mobile

gsm.sim.operator.alph0=T-Mobile



gsm.version.ril-impl=HTC-RIL 1.5.1007HM (Aug 12 2009,15:33:33)

gsm.version.baseband=63.18.55.06EU_6.35.06.18

gsm.imei=

gsm.sim.operator.numeric=46001

gsm.operator.alpha=涓浗鑱旈€?
------ END ------
......

Locks held:

-------------------------------------------------------------------------------

DUMP OF SERVICE window:

Current Window Manager state:

  Window #4:

    Window{437a5e30 Keyguard paused=false}

    mSession=Session{4367e6b8} [email protected]

    mAttrs=WM.LayoutParams{(0,0)(fillxfill) sim=#20 ty=2004 fl=#20800 fmt=-2 wanim=0x1030060 or=5}

    mAttachedWindow=null mLayoutAttached=false mIsImWindow=false

    mBaseLayer=121000 mSubLayer=0 mAnimLayer=121000+0=121000 mLastLayer=121000

    mSurface=Surface(native-token=3615664)

    mToken=WindowToken{43636680 token=null}

    mRootToken=WindowToken{43636680 token=null}

    mAppToken=null

    mTargetAppToken=null

    mViewVisibility=0x0 mPolicyVisibility=true (after=true) mAttachedHidden=false mLastHidden=false mHaveFrame=true

    Requested w=320 h=480 x=0 y=0

    mGivenContentInsets=[0,0][0,0] mGivenVisibleInsets=[0,0][0,0] mTouchableInsets=0 pending=false

    mShownFrame=[0,25][320,480] last=[0,25][320,480]

    mFrame=[0,25][320,480] last=[0,25][320,480]

    mContainingFrame=[0,25][320,480] mDisplayFrame=[0,25][320,480]

    mContentFrame=[0,25][320,480] mVisibleFrame=[0,25][320,480]

    mContentInsets=[0,0][0,0] last=[0,0][0,0] mVisibleInsets=[0,0][0,0] last=[0,0][0,0]

    mShownAlpha=1.0 mAlpha=1.0 mLastAlpha=1.0

    mAnimating=false mLocalAnimating=false mAnimationIsEntrance=false mAnimation=null

    XForm: has=false {alpha=1.0 matrix=[1.0, 0.0, 0.0][0.0, 1.0, 0.0][0.0, 0.0, 1.0]}

    mDrawPending=false mCommitDrawPending=false mReadyToShow=false mHasDrawn=true

    mExiting=false mRemoveOnExit=false mDestroying=false mRemoved=false

    mOrientationChanging=false mAppFreezing=false

  Window #3:

    Window{43732570 StatusBar paused=false}

    mSession=Session{4367e6b8} [email protected]

    mAttrs=WM.LayoutParams{(0,0)(fillx25) sim=#20 gr=#37 ty=2000 fl=#48 fmt=-3 wanim=0x103005f}

    mAttachedWindow=null mLayoutAttached=false mIsImWindow=false

    mBaseLayer=61000 mSubLayer=0 mAnimLayer=61000+0=61000 mLastLayer=61000

    mSurface=Surface(native-token=3289032)

    mToken=WindowToken{43636680 token=null}

    mRootToken=WindowToken{43636680 token=null}

    mAppToken=null

    mTargetAppToken=null

    mViewVisibility=0x0 mPolicyVisibility=true (after=true) mAttachedHidden=false mLastHidden=false mHaveFrame=true

    Requested w=320 h=25 x=0 y=0

    mGivenContentInsets=[0,0][0,0] mGivenVisibleInsets=[0,0][0,0] mTouchableInsets=0 pending=false

    mShownFrame=[0,0][320,25] last=[0,0][320,25]

    mFrame=[0,0][320,25] last=[0,0][320,25]

    mContainingFrame=[0,0][320,480] mDisplayFrame=[0,0][320,480]

    mContentFrame=[0,0][320,25] mVisibleFrame=[0,0][320,25]

    mContentInsets=[0,0][0,0] last=[0,0][0,0] mVisibleInsets=[0,0][0,0] last=[0,0][0,0]

    mShownAlpha=1.0 mAlpha=1.0 mLastAlpha=1.0

    mAnimating=false mLocalAnimating=false mAnimationIsEntrance=true mAnimation=null

    XForm: has=false {alpha=1.0 matrix=[1.0, 0.0, 0.0][0.0, 1.0, 0.0][0.0, 0.0, 1.0]}

    mDrawPending=false mCommitDrawPending=false mReadyToShow=false mHasDrawn=true

    mExiting=false mRemoveOnExit=false mDestroying=false mRemoved=false

    mOrientationChanging=false mAppFreezing=false

  Window #2:

    Window{4375a658 StatusBarExpanded paused=false}

    mSession=Session{4367e6b8} [email protected]

    mAttrs=WM.LayoutParams{(0,0)(fillxwrap) sim=#120 gr=#37 ty=2008 fl=#31320 fmt=-3 wanim=0x1030001}

    mAttachedWindow=null mLayoutAttached=false mIsImWindow=false

    mBaseLayer=41000 mSubLayer=0 mAnimLayer=41005+0=41005 mLastLayer=0

    mSurface=null

    mToken=WindowToken{43636680 token=null}

    mRootToken=WindowToken{43636680 token=null}

    mAppToken=null

    mTargetAppToken=null

    mViewVisibility=0x8 mPolicyVisibility=true (after=true) mAttachedHidden=false mLastHidden=false mHaveFrame=true

    Requested w=320 h=235 x=0 y=0

    mGivenContentInsets=[0,0][0,0] mGivenVisibleInsets=[0,0][0,0] mTouchableInsets=0 pending=false

    mShownFrame=[0,0][0,0] last=[0,0][0,0]

    mFrame=[0,0][320,0] last=[0,0][0,0]

    mContainingFrame=[0,0][320,480] mDisplayFrame=[-10000,-10000][10000,10000]

    mContentFrame=[0,0][320,0] mVisibleFrame=[0,0][320,0]

    mContentInsets=[0,0][0,0] last=[0,0][0,0] mVisibleInsets=[0,0][0,0] last=[0,0][0,0]

    mShownAlpha=1.0 mAlpha=1.0 mLastAlpha=1.0

    mAnimating=false mLocalAnimating=false mAnimationIsEntrance=false mAnimation=null

    XForm: has=false {alpha=1.0 matrix=[1.0, 0.0, 0.0][0.0, 1.0, 0.0][0.0, 0.0, 1.0]}

    mDrawPending=false mCommitDrawPending=false mReadyToShow=false mHasDrawn=false

    mExiting=false mRemoveOnExit=false mDestroying=false mRemoved=false

    mOrientationChanging=false mAppFreezing=false

  Window #1:

    Window{4375a400 TrackingView paused=false}

    mSession=Session{4367e6b8} [email protected]

    mAttrs=WM.LayoutParams{(0,0)(fillxfill) sim=#20 gr=#37 ty=2008 fl=#20300 fmt=-3}

    mAttachedWindow=null mLayoutAttached=false mIsImWindow=false

    mBaseLayer=41000 mSubLayer=0 mAnimLayer=41000+0=41000 mLastLayer=0

    mSurface=null

    mToken=WindowToken{43636680 token=null}

    mRootToken=WindowToken{43636680 token=null}

    mAppToken=null

    mTargetAppToken=null

    mViewVisibility=0x8 mPolicyVisibility=true (after=true) mAttachedHidden=false mLastHidden=false mHaveFrame=true

    Requested w=320 h=480 x=0 y=0

    mGivenContentInsets=[0,0][0,0] mGivenVisibleInsets=[0,0][0,0] mTouchableInsets=0 pending=false

    mShownFrame=[0,0][0,0] last=[0,0][0,0]

    mFrame=[0,0][320,480] last=[0,0][0,0]

    mContainingFrame=[0,0][320,480] mDisplayFrame=[-10000,-10000][10000,10000]

    mContentFrame=[0,0][320,480] mVisibleFrame=[0,0][320,480]

    mContentInsets=[0,0][0,0] last=[0,0][0,0] mVisibleInsets=[0,0][0,0] last=[0,0][0,0]

    mShownAlpha=1.0 mAlpha=1.0 mLastAlpha=1.0

    mAnimating=false mLocalAnimating=false mAnimationIsEntrance=false mAnimation=null

    XForm: has=false {alpha=1.0 matrix=[1.0, 0.0, 0.0][0.0, 1.0, 0.0][0.0, 0.0, 1.0]}

    mDrawPending=false mCommitDrawPending=false mReadyToShow=false mHasDrawn=false

    mExiting=false mRemoveOnExit=false mDestroying=false mRemoved=false

    mOrientationChanging=false mAppFreezing=false

  Window #0:

    Window{43858df8 com.htc.launcher/com.htc.launcher.Launcher paused=false}

    mSession=Session{436cf880} [email protected]

    mAttrs=WM.LayoutParams{(0,0)(fillxfill) sim=#20 ty=1 fl=#10100 fmt=-1 wanim=0x1030001}

    mAttachedWindow=null mLayoutAttached=false mIsImWindow=false

    mBaseLayer=11000 mSubLayer=0 mAnimLayer=11000+0=11000 mLastLayer=11000

    mSurface=Surface(native-token=4011776)

    mToken=AppWindowToken{4373cd80 token=HistoryRecord{437726d0 {com.htc.launcher/com.htc.launcher.Launcher}}}

    mRootToken=AppWindowToken{4373cd80 token=HistoryRecord{437726d0 {com.htc.launcher/com.htc.launcher.Launcher}}}

    mAppToken=AppWindowToken{4373cd80 token=HistoryRecord{437726d0 {com.htc.launcher/com.htc.launcher.Launcher}}}

    mTargetAppToken=null

    mViewVisibility=0x0 mPolicyVisibility=true (after=true) mAttachedHidden=false mLastHidden=false mHaveFrame=true

    Requested w=320 h=480 x=0 y=0

    mGivenContentInsets=[0,0][0,0] mGivenVisibleInsets=[0,0][0,0] mTouchableInsets=0 pending=false

    mShownFrame=[0,0][320,480] last=[0,0][320,480]

    mFrame=[0,0][320,480] last=[0,0][320,480]

    mContainingFrame=[0,0][320,480] mDisplayFrame=[0,0][320,480]

    mContentFrame=[0,25][320,480] mVisibleFrame=[0,25][320,480]

    mContentInsets=[0,25][0,0] last=[0,25][0,0] mVisibleInsets=[0,25][0,0] last=[0,25][0,0]

    mShownAlpha=1.0 mAlpha=1.0 mLastAlpha=1.0

    mAnimating=false mLocalAnimating=false mAnimationIsEntrance=false mAnimation=null

    XForm: has=false {alpha=1.0 matrix=[1.0, 0.0, 0.0][0.0, 1.0, 0.0][0.0, 0.0, 1.0]}

    mDrawPending=false mCommitDrawPending=false mReadyToShow=false mHasDrawn=true

    mExiting=false mRemoveOnExit=false mDestroying=false mRemoved=false

    mOrientationChanging=false mAppFreezing=false



  All active sessions:

  Session Session{436cf880}

    Session{436cf880}

    mNumWindow=1 mClientDead=false [email protected]

    mPendingPointerWindow=null mPendingPointerMove=null

    mPendingTrackballWindow=null mPendingTrackballMove=null

  Session Session{43662b80}

    Session{43662b80}

    mNumWindow=0 mClientDead=false [email protected]

    mPendingPointerWindow=null mPendingPointerMove=null

    mPendingTrackballWindow=null mPendingTrackballMove=null

  Session Session{4377bc10}

    Session{4377bc10}

    mNumWindow=0 mClientDead=false mSurfaceSession=android.view.Sur[email protected]

    mPendingPointerWindow=null mPendingPointerMove=null

    mPendingTrackballWindow=null mPendingTrackballMove=null

  Session Session{437f1a18}

    Session{437f1a18}

    mNumWindow=0 mClientDead=false [email protected]

    mPendingPointerWindow=null mPendingPointerMove=null

    mPendingTrackballWindow=null mPendingTrackballMove=null

  Session Session{4366f4a8}

    Session{4366f4a8}

    mNumWindow=0 mClientDead=false [email protected]

    mPendingPointerWindow=null mPendingPointerMove=null

    mPendingTrackballWindow=null mPendingTrackballMove=null

  Session Session{4367e6b8}

    Session{4367e6b8}

    mNumWindow=4 mClientDead=false [email protected]

    mPendingPointerWindow=null mPendingPointerMove=null

    mPendingTrackballWindow=null mPendingTrackballMove=null



  All tokens:

  Token HistoryRecord{437726d0 {com.htc.launcher/com.htc.launcher.Launcher}}

    AppWindowToken{4373cd80 token=HistoryRecord{437726d0 {com.htc.launcher/com.htc.launcher.Launcher}}}

    token=HistoryRecord{437726d0 {com.htc.launcher/com.htc.launcher.Launcher}}

    windows=[Window{43858df8 com.htc.launcher/com.htc.launcher.Launcher paused=false}]

    windowType=2 hidden=false hasVisible=true

    app=true

    allAppWindows=[Window{43858df8 com.htc.launcher/com.htc.launcher.Launcher paused=false}]

    groupId=4 requestedOrientation=1

    hiddenRequested=false clientHidden=false willBeHidden=false reportedVisible=false

    paused=false freezingScreen=false

    numInterestingWindows=2 numDrawnWindows=2 inPendingTransaction=false allDrawn=true

    animating=false animation=null

    animLayerAdjustment=0 transformation={alpha=1.0 matrix=[1.0, 0.0, 0.0][0.0, 1.0, 0.0][0.0, 0.0, 1.0]}

    startingData=null removed=false firstWindowDrawn=true

    startingWindow=null startingView=null startingDisplayed=true startingMovedfalse

  Token [email protected]

    WindowToken{43803440 [email protected]}

    [email protected]

    windows=[]

    windowType=2011 hidden=false hasVisible=false

  Token null

    WindowToken{43636680 token=null}

    token=null

    windows=[Window{43732570 StatusBar paused=false}, Window{4375a400 TrackingView paused=false}, Window{4375a658 StatusBarExpanded paused=false}, Window{437a5e30 Keyguard paused=false}]

    windowType=-1 hidden=false hasVisible=true



  Window token list:

  WindowToken #0: WindowToken{43636680 token=null}

  WindowToken #1: WindowToken{43803440 [email protected]}

  WindowToken #2: AppWindowToken{4373cd80 token=HistoryRecord{437726d0 {com.htc.launcher/com.htc.launcher.Launcher}}}



  Application tokens in Z order:

  AppWindowToken #0: AppWindowToken{4373cd80 token=HistoryRecord{437726d0 {com.htc.launcher/com.htc.launcher.Launcher}}}



  mCurrentFocus=Window{437a5e30 Keyguard paused=false}

  mLastFocus=Window{437a5e30 Keyguard paused=false}

  mFocusedApp=AppWindowToken{4373cd80 token=HistoryRecord{437726d0 {com.htc.launcher/com.htc.launcher.Launcher}}}

  mInputMethodTarget=null

  mInputMethodWindow=null

  mInTouchMode=true

  mSystemBooted=true mDisplayEnabled=true

  mLayoutNeeded=false mBlurShown=false

  mDimShown=true current=0.0 target=0.0 delta=-0.006 lastAnimTime=0

  mInputMethodAnimLayerAdjustment=0

  mDisplayFrozen=false mWindowsFreezingScreen=false mAppsFreezingScreen=0

  mRotation=0, mForcedAppOrientation=5, mRequestedRotation=0

  mAnimationPending=false mWindowAnimationScale=1.0 mTransitionWindowAnimationScale=0.0

  mNextAppTransition=0x0, mAppTransitionReady=false, mAppTransitionTimeout=false

  mStartingIconInTransition=false, mSkipAppTransitionAnimation=false

  mOpeningApps=[]

  mClosingApps=[]

  DisplayWidth=320 DisplayHeight=480

  KeyWaiter state:

    mLastWin=null mLastBinder=null

    mFinished=true mGotFirstWindow=true mEventDispatching=false mTimeToSwitch=0
           

繼續閱讀