안드로이드 Task stack 뜯어보기

7 분 소요

안드로이드 Task에 대한 내용은 안드로이드 Task 포스팅을 참고할 것.

아래 ADB 명령을 통해 현재 기기에 생성된 Task를 확인할 수 있다.

adb shell dumpsys activity activities > result.txt

Activity의 상태를 보여달라는 명령으로 Activity에 Task 정보가 포함되어 있다.

아래는 현재 단말에 아무것도 실행된 앱이 없는 상태에서 kimss.app.tasktest 앱의 A Activity가 B Activity를 실행시킨 경우에 대한 예이다. (갤럭시 노트5로 테스트)

ACTIVITY MANAGER ACTIVITIES (dumpsys activity activities)
Display #0 (activities from top to bottom):
  Stack #1:
    Task id #2374
    * TaskRecord{db853f8 #2374 A=kimss.app.tasktest U=0 sz=2}
      userId=0 effectiveUid=u0a755 mCallingUid=2000 mCallingPackage=null
      affinity=kimss.app.tasktest
      intent={act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=kimss.app.tasktest/.A}
      realActivity=kimss.app.tasktest/.A
      autoRemoveRecents=false isPersistable=true numFullscreen=2 taskType=0 mTaskToReturnTo=1
      rootWasReset=false mNeverRelinquishIdentity=true mReuseTask=false mLockTaskAuth=LOCK_TASK_AUTH_PINNABLE
      Activities=[ActivityRecord{522ec94 u0 kimss.app.tasktest/.A t2374}, ActivityRecord{e1bd371 u0 kimss.app.tasktest/.B t2374}]
      askedCompatMode=false inRecents=true isAvailable=true
      lastThumbnail=android.graphics.Bitmap@ae180d1 lastThumbnailFile=/data/system/recent_images/2374_task_thumbnail.png
      stackId=1
      hasBeenVisible=true mResizeable=false firstActiveTime=1475299182857 lastActiveTime=1475299210659 lastActiveElapsedTime=1290568837 (inactive for 5s)
      multiWindowStyle=MultiWindowStyle{type=0, zone=ZONE_UNKNOWN, option=0x00000000, bounds=null, isNull=false, isolatedCenterPoint=Point(0, 0), scale=0.0, specificTaskId=-1}
      bHidden=false
      isSecretMode=false
      * Hist #1: ActivityRecord{e1bd371 u0 kimss.app.tasktest/.B t2374}
          packageName=kimss.app.tasktest processName=kimss.app.tasktest
          launchedFromUid=10755 launchedFromPackage=kimss.app.tasktest userId=0
          app=ProcessRecord{9e9b736 11970:kimss.app.tasktest/u0a755}
          Intent { cmp=kimss.app.tasktest/.B bnds=[102,473][1337,1708] }
          frontOfTask=false task=TaskRecord{db853f8 #2374 A=kimss.app.tasktest U=0 sz=2}
          taskAffinity=kimss.app.tasktest
          realActivity=kimss.app.tasktest/.B
          baseDir=/data/app/kimss.app.tasktest-1/base.apk
          dataDir=/data/user/0/kimss.app.tasktest
          stateNotNeeded=false componentSpecified=true mActivityType=0
          compat={560dpi} labelRes=0x7f060020 icon=0x7f030000 theme=0x7f08008e
          config={1 1.0 themeSeq = 0 showBtnBg = 0 450mcc5mnc ko_KR ldltr sw411dp w411dp h707dp 560dpi nrml long port finger -keyb/v/h -nav/h mkbd/h s.263}
          stackConfigOverride={0 1.0 themeSeq = 0 showBtnBg = -1 ?mcc?mnc ?locale ?layoutDir ?swdp ?wdp ?hdp ?density ?lsize ?long ?orien ?uimode ?night ?touch ?keyb/?/? ?nav/? mkbd/?}
          taskDescription: iconFilename=null label="null" color=ff3f51b5
          launchFailed=false launchCount=0 lastLaunchTime=-32s982ms
          haveState=false icicle=null
          state=RESUMED stopped=false delayedResume=false finishing=false
          keysPaused=false inHistory=true visible=true sleeping=false idle=true
          fullscreen=true noDisplay=false immersive=false launchMode=0
          frozenBeforeDestroy=false forceNewConfig=false
          mActivityType=APPLICATION_ACTIVITY_TYPE
          waitingVisible=false nowVisible=true lastVisibleTime=-5s241ms
          multiWindowStyle=MultiWindowStyle{type=0, zone=ZONE_UNKNOWN, option=0x00000000, bounds=null, isNull=false, isolatedCenterPoint=Point(0, 0), scale=0.0, specificTaskId=-1}
          bMultiInstance=false
          mIsLastShownWhenLocked=false
      * Hist #0: ActivityRecord{522ec94 u0 kimss.app.tasktest/.A t2374}
          packageName=kimss.app.tasktest processName=kimss.app.tasktest
          launchedFromUid=2000 launchedFromPackage=null userId=0
          app=ProcessRecord{9e9b736 11970:kimss.app.tasktest/u0a755}
          Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=kimss.app.tasktest/.A }
          frontOfTask=true task=TaskRecord{db853f8 #2374 A=kimss.app.tasktest U=0 sz=2}
          taskAffinity=kimss.app.tasktest
          realActivity=kimss.app.tasktest/.A
          baseDir=/data/app/kimss.app.tasktest-1/base.apk
          dataDir=/data/user/0/kimss.app.tasktest
          stateNotNeeded=false componentSpecified=false mActivityType=0
          compat={560dpi} labelRes=0x7f060020 icon=0x7f030000 theme=0x7f08008e
          config={1 1.0 themeSeq = 0 showBtnBg = 0 450mcc5mnc ko_KR ldltr sw411dp w411dp h707dp 560dpi nrml long port finger -keyb/v/h -nav/h mkbd/h s.263}
          stackConfigOverride={0 1.0 themeSeq = 0 showBtnBg = -1 ?mcc?mnc ?locale ?layoutDir ?swdp ?wdp ?hdp ?density ?lsize ?long ?orien ?uimode ?night ?touch ?keyb/?/? ?nav/? mkbd/?}
          taskDescription: iconFilename=null label="null" color=ff3f51b5
          launchFailed=false launchCount=0 lastLaunchTime=-33s556ms
          haveState=true icicle=Bundle[mParcelledData.dataSize=680]
          state=STOPPED stopped=true delayedResume=false finishing=false
          keysPaused=false inHistory=true visible=false sleeping=false idle=true
          fullscreen=true noDisplay=false immersive=false launchMode=0
          frozenBeforeDestroy=false forceNewConfig=false
          mActivityType=APPLICATION_ACTIVITY_TYPE
          displayStartTime=-33s231ms startTime=0
          multiWindowStyle=MultiWindowStyle{type=0, zone=ZONE_UNKNOWN, option=0x00000000, bounds=null, isNull=false, isolatedCenterPoint=Point(0, 0), scale=0.0, specificTaskId=-1}
          bMultiInstance=false
          mIsLastShownWhenLocked=false

    Running activities (most recent first):
      TaskRecord{db853f8 #2374 A=kimss.app.tasktest U=0 sz=2}
        Run #1: ActivityRecord{e1bd371 u0 kimss.app.tasktest/.B t2374}
        Run #0: ActivityRecord{522ec94 u0 kimss.app.tasktest/.A t2374}

    mResumedActivity: ActivityRecord{e1bd371 u0 kimss.app.tasktest/.B t2374}
    mLastPausedActivity: ActivityRecord{e1bd371 u0 kimss.app.tasktest/.B t2374}

  Stack #0:
    Task id #176
    * TaskRecord{deafbac #176 A=com.android.systemui U=0 sz=1}
      userId=0 effectiveUid=u0a528 mCallingUid=u0a528 mCallingPackage=com.android.systemui
      affinity=com.android.systemui
      intent={flg=0x10800000 cmp=com.android.systemui/.recents.SeparatedRecentsActivity bnds=[83,1670][1358,2945]}
      realActivity=com.android.systemui/.recents.SeparatedRecentsActivity
      autoRemoveRecents=false isPersistable=false numFullscreen=1 taskType=2 mTaskToReturnTo=0
      rootWasReset=false mNeverRelinquishIdentity=true mReuseTask=false mLockTaskAuth=LOCK_TASK_AUTH_PINNABLE
      Activities=[ActivityRecord{487ad68 u0 com.android.systemui/.recents.SeparatedRecentsActivity t176}]
      askedCompatMode=false inRecents=true isAvailable=true
      lastThumbnail=null lastThumbnailFile=/data/system/recent_images/176_task_thumbnail.png
      stackId=0
      hasBeenVisible=true mResizeable=false firstActiveTime=1474085921036 lastActiveTime=1475299210647 lastActiveElapsedTime=1290568825 (inactive for 5s)
      multiWindowStyle=MultiWindowStyle{type=0, zone=ZONE_UNKNOWN, option=0x01000002, bounds=null, isNull=false, isolatedCenterPoint=Point(0, 0), scale=0.0, specificTaskId=-1, or=3}
      bHidden=false
      isSecretMode=false
      * Hist #0: ActivityRecord{487ad68 u0 com.android.systemui/.recents.SeparatedRecentsActivity t176}
          packageName=com.android.systemui processName=com.android.systemui.recents
          launchedFromUid=10528 launchedFromPackage=com.android.systemui userId=0
          app=ProcessRecord{8c3c075 4366:com.android.systemui.recents/u0a528}
          Intent { flg=0x10800000 cmp=com.android.systemui/.recents.SeparatedRecentsActivity bnds=[83,1670][1358,2945] }
          frontOfTask=true task=TaskRecord{deafbac #176 A=com.android.systemui U=0 sz=1}
          taskAffinity=com.android.systemui
          realActivity=com.android.systemui/.recents.SeparatedRecentsActivity
          baseDir=/system/priv-app/SystemUI/SystemUI.apk
          dataDir=/data/user/0/com.android.systemui
          stateNotNeeded=true componentSpecified=false mActivityType=2
          compat={560dpi} labelRes=0x7f0d024e icon=0x7f020247 theme=0x7f100015
          config={1 1.0 themeSeq = 0 showBtnBg = 0 450mcc5mnc ko_KR ldltr sw411dp w411dp h707dp 560dpi nrml long port finger -keyb/v/h -nav/h mkbd/h s.263}
          stackConfigOverride={0 1.0 themeSeq = 0 showBtnBg = -1 ?mcc?mnc ?locale ?layoutDir ?swdp ?wdp ?hdp ?density ?lsize ?long ?orien ?uimode ?night ?touch ?keyb/?/? ?nav/? mkbd/?}
          taskDescription: iconFilename=null label="null" color=fff5f5f5
          launchFailed=false launchCount=0 lastLaunchTime=-13d19h3m31s799ms
          haveState=true icicle=Bundle[mParcelledData.dataSize=2324]
          state=STOPPED stopped=true delayedResume=false finishing=false
          keysPaused=false inHistory=true visible=false sleeping=false idle=true
          fullscreen=true noDisplay=false immersive=false launchMode=3
          frozenBeforeDestroy=false forceNewConfig=false
          mActivityType=RECENTS_ACTIVITY_TYPE
          waitingVisible=false nowVisible=false lastVisibleTime=-6s268ms
          multiWindowStyle=MultiWindowStyle{type=0, zone=ZONE_UNKNOWN, option=0x01000002, bounds=null, isNull=false, isolatedCenterPoint=Point(0, 0), scale=0.0, specificTaskId=-1, or=3}
          bMultiInstance=false
          mIsLastShownWhenLocked=false

    Task id #102
    * TaskRecord{67fd55f #102 A=com.sec.android.app.launcher U=0 sz=1}
      userId=0 effectiveUid=u0a63 mCallingUid=u0a528 mCallingPackage=com.android.systemui
      affinity=com.sec.android.app.launcher
      intent={act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10800000 cmp=com.sec.android.app.launcher/com.android.launcher2.Launcher}
      origActivity=com.sec.android.app.launcher/.activities.LauncherActivity
      realActivity=com.sec.android.app.launcher/com.android.launcher2.Launcher
      autoRemoveRecents=false isPersistable=false numFullscreen=1 taskType=1 mTaskToReturnTo=1
      rootWasReset=false mNeverRelinquishIdentity=true mReuseTask=false mLockTaskAuth=LOCK_TASK_AUTH_PINNABLE
      Activities=[ActivityRecord{f248222 u0 com.sec.android.app.launcher/.activities.LauncherActivity t102}]
      askedCompatMode=false inRecents=true isAvailable=true
      lastThumbnail=null lastThumbnailFile=/data/system/recent_images/102_task_thumbnail.png
      stackId=0
      hasBeenVisible=true mResizeable=false firstActiveTime=1474008635870 lastActiveTime=1475298860659 lastActiveElapsedTime=1290218836 (inactive for 355s)
      multiWindowStyle=MultiWindowStyle{type=0, zone=ZONE_UNKNOWN, option=0x00000000, bounds=null, isNull=false, isolatedCenterPoint=Point(0, 0), scale=0.0, specificTaskId=-1, or=1}
      bHidden=false
      isSecretMode=false
      * Hist #0: ActivityRecord{f248222 u0 com.sec.android.app.launcher/.activities.LauncherActivity t102}
          packageName=com.sec.android.app.launcher processName=com.sec.android.app.launcher
          launchedFromUid=0 launchedFromPackage=null userId=0
          app=ProcessRecord{590c70f 4655:com.sec.android.app.launcher/u0a63}
          Intent { act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10800000 cmp=com.sec.android.app.launcher/.activities.LauncherActivity }
          frontOfTask=true task=TaskRecord{67fd55f #102 A=com.sec.android.app.launcher U=0 sz=1}
          taskAffinity=com.sec.android.app.launcher
          realActivity=com.sec.android.app.launcher/com.android.launcher2.Launcher
          baseDir=/system/priv-app/TouchWizHome_2016/TouchWizHome_2016.apk
          dataDir=/data/user/0/com.sec.android.app.launcher
          stateNotNeeded=true componentSpecified=false mActivityType=1
          compat={560dpi} labelRes=0x7f070002 icon=0x7f02006f theme=0x7f0d0010
          config={1 1.0 themeSeq = 0 showBtnBg = 0 450mcc5mnc ko_KR ldltr sw411dp w411dp h707dp 560dpi nrml long port finger -keyb/v/h -nav/h mkbd/h s.263}
          stackConfigOverride={0 1.0 themeSeq = 0 showBtnBg = -1 ?mcc?mnc ?locale ?layoutDir ?swdp ?wdp ?hdp ?density ?lsize ?long ?orien ?uimode ?night ?touch ?keyb/?/? ?nav/? mkbd/?}
          taskDescription: iconFilename=null label="null" color=ff51b0d3
          launchFailed=false launchCount=0 lastLaunchTime=-14d2h8m28s114ms
          haveState=true icicle=Bundle[mParcelledData.dataSize=24324]
          state=STOPPED stopped=true delayedResume=false finishing=false
          keysPaused=false inHistory=true visible=false sleeping=false idle=true
          fullscreen=true noDisplay=false immersive=false launchMode=2
          frozenBeforeDestroy=false forceNewConfig=false
          mActivityType=HOME_ACTIVITY_TYPE
          waitingVisible=false nowVisible=false lastVisibleTime=-7m54s674ms
          multiWindowStyle=MultiWindowStyle{type=0, zone=ZONE_UNKNOWN, option=0x00000000, bounds=null, isNull=false, isolatedCenterPoint=Point(0, 0), scale=0.0, specificTaskId=-1, or=1}
          bMultiInstance=false
          mIsLastShownWhenLocked=false

    Running activities (most recent first):
      TaskRecord{deafbac #176 A=com.android.systemui U=0 sz=1}
        Run #1: ActivityRecord{487ad68 u0 com.android.systemui/.recents.SeparatedRecentsActivity t176}
      TaskRecord{67fd55f #102 A=com.sec.android.app.launcher U=0 sz=1}
        Run #0: ActivityRecord{f248222 u0 com.sec.android.app.launcher/.activities.LauncherActivity t102}

    mLastPausedActivity: ActivityRecord{487ad68 u0 com.android.systemui/.recents.SeparatedRecentsActivity t176}

    mLastPausedActivity: ActivityRecord{d1b2128 u0 com.android.systemui/.multiwindow.RecentsMultiWindowActivity t2059 f}

  mFocusedActivity: ActivityRecord{e1bd371 u0 kimss.app.tasktest/.B t2374}
  mPersistDownloadablePkgs:
    com.android.systemui
  mFocusedStack=ActivityStack{fb0ae96 stackId=1, 1 tasks} mLastFocusedStack=ActivityStack{fb0ae96 stackId=1, 1 tasks}
  mSleepTimeout=false
  mCurTaskId=2374
  mUserStackInFront={}
  mActivityContainers={0=ActivtyContainer{0}A zone=0, 1=ActivtyContainer{1}A zone=0, 2=ActivtyContainer{2}A zone=12, 3=ActivtyContainer{3}A zone=3}
  mLockTaskModeState=NONE mLockTaskPackages (userId:packages)=
    0:[]
 mLockTaskModeTasks[]
  mCurrentUser=0

GlobalTaskHistory
  ActivityDisplay #0 (1440x2560)
    TASK id #2374	u0	(Stack #1)	kimss.app.tasktest
    TASK id #176	u0	(Stack #0)	com.android.systemui
    TASK id #102	u0	(Stack #0)	com.sec.android.app.launcher

MultiWindow setting
  current

  history
    u0 history[0] - mobile_keyboard : true reason : prev

1. 전체적인 구조

현재 전체 구조가 아래와 같다.

 Stack #1:
   Task id #2374
     TaskRecord(#2374)
       Hist #1: ActivityRecord(...)
       Hist #0: ActivityRecord(...)
       
   Running activities (most recent first):
     TaskRecord(#2374)
       Run #1: ActivityRecord(...)
       Run #0: ActivityRecord(...)
         
 Stack #0:
   Task id #176
     TaskRecord(#176)
       Hist #0: ActivityRecord(...)
       
   Task id #102
     TaskRecord(#102)
       Hist #0: ActivityRecord(...)
       
   Running activities (most recent first):
     TaskRecord(#176)
       Run #1: ActivityRecord(...)
     TaskRecord(#102)
       Run #0: ActivityRecord(...)

1.1 Stack #..

여기서 나타나는 Stack은 어떤 기준으로 나오는 것인지 잘 모르겠다.
구조상 Stack 아래에 여러개의 Task가 올 수 있다.

현재 “Stack #1” 에는 실행시킨 테스트앱의 Task가 들어가있고, “Stack #0” 은 런처앱의 Task가 있다.
런처앱에는 2개의 Task가 있는데 각각 “최근앱 목록” 에 해당하는 Task와 “런처 홈”에 해당하는 Task 이다.

현재는 테스트 앱 하나만 띄운 경우인데 여러앱을 띄우고 dump 데이터를 다시 뽑으니 “Stack #1” 에 여러개의 Task가 들어가게 된다.
정확히 어떤 기준으로 Stack이 나뉘어지고 Task들이 자리잡는지 모르겠으나 개발자가 임의로 설정할 수 있고 어떠한 의미를 가진다 라는 내용은 보지 못하였다.

1.2. Task id #…

Stack 아래에 있는 Task가 Activity Task의 정보이다.
하나의 Task는 별도의 Task ID를 가지고 분류된다.

Task의 순서도 안드로이드에서 의미가 있는 정보이다.
상위에 있는 Task가 최근에 실행한 Task이고, 이건 최근 앱 목록에 나오는 순서이기도 하다.

1.3. TaskRecord의 Hist #…

해당 Task의 Activity Stack 정보이다.
“Hist #0 > Hist #1 > Hist #2” 와 같이 순서대로 Stack 구조로 쌓인다.
최상위에 있는 Hist 정보가 Top Activity이고, 최하단에 있는 Hist #0 이 Root Activity 이다.

1.4. Running activities

해당 Stack 아래에 있는 각 Task에서 실행되고 있는 Activity 정보를 보여준다.
그냥 요약해서 보여주는 정보로 큰 의미는 없는것 같다.

2. Task 정보

Task 아래에 있는 정보는 아래와 같다.

Task id #2374
* TaskRecord{db853f8 #2374 A=kimss.app.tasktest U=0 sz=2}
  userId=0 effectiveUid=u0a755 mCallingUid=2000 mCallingPackage=null
  affinity=kimss.app.tasktest
  intent={act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=kimss.app.tasktest/.A}
  realActivity=kimss.app.tasktest/.A
  autoRemoveRecents=false isPersistable=true numFullscreen=2 taskType=0 mTaskToReturnTo=1
  rootWasReset=false mNeverRelinquishIdentity=true mReuseTask=false mLockTaskAuth=LOCK_TASK_AUTH_PINNABLE
  Activities=[ActivityRecord{522ec94 u0 kimss.app.tasktest/.A t2374}, ActivityRecord{e1bd371 u0 kimss.app.tasktest/.B t2374}]
  askedCompatMode=false inRecents=true isAvailable=true
  lastThumbnail=android.graphics.Bitmap@ae180d1 lastThumbnailFile=/data/system/recent_images/2374_task_thumbnail.png
  stackId=1
  hasBeenVisible=true mResizeable=false firstActiveTime=1475299182857 lastActiveTime=1475299210659 lastActiveElapsedTime=1290568837 (inactive for 5s)
  multiWindowStyle=MultiWindowStyle{type=0, zone=ZONE_UNKNOWN, option=0x00000000, bounds=null, isNull=false, isolatedCenterPoint=Point(0, 0), scale=0.0, specificTaskId=-1}
  bHidden=false
  isSecretMode=false

Task 내용은 TaskRecord.java 코드를 참고하면 된다.

2.1. taskId

Task를 구분하는 유일 값. (Unique identifier for this task.)

2.2. affinity

Task 친밀도를 나타내는 정보.
(The affinity name for this task, or null; may change identity.)

2.3. rootAffinity

Initial base affinity. or null; does not change from initial root.

2.4. intent

이 Task에서 가장 먼저 실행된 Root Activity를 실행시킨 Intent 정보이다. (The original intent that started the task.)

2.5. affinityIntent

Intent of affinity-moved activity that started this task.

2.6. realActivity

The actual activity component that started the daytask.

2.7. origActivity

The non-alias activity component of the intent.

3. Activity History 정보

Task 아래 Activity Stack의 각 History가 가지는 정보는 아래와 같다.

* Hist #1: ActivityRecord{e1bd371 u0 kimss.app.tasktest/.B t2374}
  packageName=kimss.app.tasktest processName=kimss.app.tasktest
  launchedFromUid=10755 launchedFromPackage=kimss.app.tasktest userId=0
  app=ProcessRecord{9e9b736 11970:kimss.app.tasktest/u0a755}
  Intent { cmp=kimss.app.tasktest/.B bnds=[102,473][1337,1708] }
  frontOfTask=false task=TaskRecord{db853f8 #2374 A=kimss.app.tasktest U=0 sz=2}
  taskAffinity=kimss.app.tasktest
  realActivity=kimss.app.tasktest/.B
  baseDir=/data/app/kimss.app.tasktest-1/base.apk
  dataDir=/data/user/0/kimss.app.tasktest
  stateNotNeeded=false componentSpecified=true mActivityType=0
  compat={560dpi} labelRes=0x7f060020 icon=0x7f030000 theme=0x7f08008e
  config={1 1.0 themeSeq = 0 showBtnBg = 0 450mcc5mnc ko_KR ldltr sw411dp w411dp h707dp 560dpi nrml long port finger -keyb/v/h -nav/h mkbd/h s.263}
  stackConfigOverride={0 1.0 themeSeq = 0 showBtnBg = -1 ?mcc?mnc ?locale ?layoutDir ?swdp ?wdp ?hdp ?density ?lsize ?long ?orien ?uimode ?night ?touch ?keyb/?/? ?nav/? mkbd/?}
  taskDescription: iconFilename=null label="null" color=ff3f51b5
  launchFailed=false launchCount=0 lastLaunchTime=-32s982ms
  haveState=false icicle=null
  state=RESUMED stopped=false delayedResume=false finishing=false
  keysPaused=false inHistory=true visible=true sleeping=false idle=true
  fullscreen=true noDisplay=false immersive=false launchMode=0
  frozenBeforeDestroy=false forceNewConfig=false
  mActivityType=APPLICATION_ACTIVITY_TYPE
  waitingVisible=false nowVisible=true lastVisibleTime=-5s241ms
  multiWindowStyle=MultiWindowStyle{type=0, zone=ZONE_UNKNOWN, option=0x00000000, bounds=null, isNull=false, isolatedCenterPoint=Point(0, 0), scale=0.0, specificTaskId=-1}
  bMultiInstance=false
  mIsLastShownWhenLocked=false       

Activity 내용은 ActivityRecord.java 코드를 참고하면 된다.

3.1. packageName

the package implementing intent’s component

3.2. processName

process where this component wants to run

3.3. launchedFromPackage

always the package who started the activity.

3.4. app

if non-null, hosting application

3.5. intent

the original intent that generated us

3.6. frontOfTask

is this the root activity of its task?

3.7. task

the task this is in.

3.8. taskAffinity

as per ActivityInfo.taskAffinity

3.9. realActivity

the intent component, or target of an alias.

댓글남기기