デバッグでよく使うコマンド dumpsys編 その2

前回に引き続き今回もdumpsysコマンドについて紹介します。

前回は一部のみ書きましたが、dumpsysのwindow windowsではWindow 1つに対し下記の情報を取得することが出来ます。

=====================================================================
Window #6 Window{b3f3b5c8 u0 SearchPanel}:

mDisplayId=0 mSession=Session{b3fd20e0 750:u0a10007} mClient=android.os.BinderProxy@b40599e0

mOwnerUid=10007 mShowToOwnerOnly=false package=com.android.systemui appop=NONE

mAttrs=WM.LayoutParams{(0,0)(fillxfill) gr=#800053 sim=#31 ty=2024 fl=#820100 fmt=-3 wanim=0x10301f5}

Requested w=800 h=1216 mLayoutSeq=44

mBaseLayer=211000 mSubLayer=0 mAnimLayer=211000+0=211000 mLastLayer=0

mToken=WindowToken{b3f8a6f0 null}

mRootToken=WindowToken{b3f8a6f0 null}

mViewVisibility=0x8 mHaveFrame=true mObscured=false

mSeq=0 mSystemUiVisibility=0x0

mGivenContentInsets=[0,0][0,0] mGivenVisibleInsets=[0,0][0,0]

mConfiguration=null

mHasSurface=false mShownFrame=[0.0,0.0][0.0,0.0] isReadyForDisplay()=false

mFrame=[0,0][800,1280] last=[0,0][0,0]

mSystemDecorRect=[0,0][0,0] last=[0,0][0,0]

Frames: containing=[0,0][800,1280] parent=[0,0][800,1280]

display=[0,0][800,1280] overscan=[0,0][800,1280]

content=[0,33][800,1216] visible=[0,33][800,1216]

decor=[0,33][800,1216]

Cur insets: overscan=[0,0][0,0] content=[0,33][0,64] visible=[0,33][0,64]

Lst insets: overscan=[0,0][0,0] content=[0,0][0,0] visible=[0,0][0,0]

WindowStateAnimator{b4059388 SearchPanel}:

mShownAlpha=0.0 mAlpha=1.0 mLastAlpha=0.0
===========================================================================

すべてのパラメータについて説明すると非常に長くなってしまうので、前回同様よく見るパラメータについて紹介します。

・mDisplayId
 Windowが現在どのDisplayに表示されているかを示す値です。
 外部ディスプレイ等を使用する際に見ることになります。

・package
 Windowを作成したアプリのパッケージ名を示す値です。

・mBaseLayer、mSubLayer、mAnimLayer
 Windowを表示するレイヤーを示す値です。
 値が高いほどz orderが高くなります。

・mSystemUiVisibility
 SystemUiの表示状態を示す値です。

Windowに関連するデバッグを行う際は上記のようなdumpsysの情報を使用すると効率よく作業を行うことが出来るので是非利用してみてください。