前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >【Android 返回堆栈管理】打印 Android 中当前运行的 Activity 任务栈信息 | Activity 任务栈信息分析 | Activity 在相同 Stack 中的不同 Task

【Android 返回堆栈管理】打印 Android 中当前运行的 Activity 任务栈信息 | Activity 任务栈信息分析 | Activity 在相同 Stack 中的不同 Task

作者头像
韩曙亮
发布于 2023-03-29 08:56:07
发布于 2023-03-29 08:56:07
6K00
代码可运行
举报
运行总次数:0
代码可运行

文章目录

一、打印 Android 中当前运行的 Activity 任务栈信息


使用如下命令 , 打印 Android 手机中的 Activity 栈 :

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
adb shell dumpsys activity activities

命令行输出结果 : 打开 CSDN 客户端 , 然后任意点击一篇博客进入 , 输入内容如下 ;

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
C:\Users\octop>adb shell dumpsys activity activities
ACTIVITY MANAGER ACTIVITIES (dumpsys activity activities)
Display #0 (activities from top to bottom):

  Stack #365: type=standard mode=fullscreen
  isSleeping=false
  mBounds=Rect(0, 0 - 0, 0)
    Task id #2967
    mBounds=Rect(0, 0 - 0, 0)
    mMinWidth=-1
    mMinHeight=-1
    mLastNonFullscreenBounds=null
    * TaskRecord{818ac96 #2967 A=net.csdn.csdnplus U=0 StackId=365 sz=2}
      userId=0 effectiveUid=u0a589 mCallingUid=u0a589 mUserSetupComplete=true mCallingPackage=net.csdn.csdnplus
      affinity=net.csdn.csdnplus
      intent={act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=net.csdn.csdnplus/.activity.SplashActivity}
      realActivity=net.csdn.csdnplus/.activity.SplashActivity
      autoRemoveRecents=false isPersistable=true numFullscreen=2 activityType=1
      rootWasReset=true mNeverRelinquishIdentity=true mReuseTask=false mLockTaskAuth=LOCK_TASK_AUTH_PINNABLE
      Activities=[ActivityRecord{b5b0b75 u0 net.csdn.csdnplus/.activity.MainActivity t2967}, ActivityRecord{f7f215 u0 net.csdn.csdnplus/.activity.BlogDetailActivity t2967}]
      askedCompatMode=false inRecents=true isAvailable=true
      mRootProcess=ProcessRecord{acfdace 20850:net.csdn.csdnplus/u0a589}
      stackId=365
      hasBeenVisible=true mResizeMode=RESIZE_MODE_UNRESIZEABLE mSupportsPictureInPicture=false isResizeable=false lastActiveTime=1319867313 (inactive for 35s)
      * Hist #1: ActivityRecord{f7f215 u0 net.csdn.csdnplus/.activity.BlogDetailActivity t2967}
          packageName=net.csdn.csdnplus processName=net.csdn.csdnplus
          launchedFromUid=10589 launchedFromPackage=net.csdn.csdnplus userId=0
          app=ProcessRecord{acfdace 20850:net.csdn.csdnplus/u0a589}
          Intent { cmp=net.csdn.csdnplus/.activity.BlogDetailActivity (has extras) }
          frontOfTask=false task=TaskRecord{818ac96 #2967 A=net.csdn.csdnplus U=0 StackId=365 sz=2}
          taskAffinity=net.csdn.csdnplus
          realActivity=net.csdn.csdnplus/.activity.BlogDetailActivity
          baseDir=/data/app/net.csdn.csdnplus-AKxdXv4cmCAwI4i4p3DLtA==/base.apk
          dataDir=/data/user/0/net.csdn.csdnplus
          stateNotNeeded=false componentSpecified=true mActivityType=standard
          compat={420dpi} labelRes=0x7f11008e icon=0x7f0807ef theme=0x7f120023
          mLastReportedConfigurations:
           mGlobalConfig={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=undefined} s.161}
           mOverrideConfig={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=standard} s.161}
          CurrentConfiguration={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=standard} s.161}
          taskDescription: label="null" icon=null iconResource=0 iconFilename=null primaryColor=fff5f5f5
           backgroundColor=fffafafa
           statusBarColor=ff757575
           navigationBarColor=ff000000
          launchFailed=false launchCount=1 lastLaunchTime=-35s702ms
          haveState=false icicle=null
          state=RESUMED stopped=false delayedResume=false finishing=false
          keysPaused=false inHistory=true visible=true sleeping=false idle=true mStartingWindowState=STARTING_WINDOW_NOT_SHOWN
          fullscreen=true noDisplay=false immersive=false launchMode=0
          frozenBeforeDestroy=false forceNewConfig=false
          mActivityType=standard
          waitingVisible=false nowVisible=true lastVisibleTime=-35s110ms
          resizeMode=RESIZE_MODE_UNRESIZEABLE
          mLastReportedMultiWindowMode=false mLastReportedPictureInPictureMode=false
          maxAspectRatio=2.3
      * Hist #0: ActivityRecord{b5b0b75 u0 net.csdn.csdnplus/.activity.MainActivity t2967}
          packageName=net.csdn.csdnplus processName=net.csdn.csdnplus
          launchedFromUid=10589 launchedFromPackage=net.csdn.csdnplus userId=0
          app=ProcessRecord{acfdace 20850:net.csdn.csdnplus/u0a589}
          Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=net.csdn.csdnplus/.activity.MainActivity }
          frontOfTask=true task=TaskRecord{818ac96 #2967 A=net.csdn.csdnplus U=0 StackId=365 sz=2}
          taskAffinity=net.csdn.csdnplus
          realActivity=net.csdn.csdnplus/.activity.MainActivity
          baseDir=/data/app/net.csdn.csdnplus-AKxdXv4cmCAwI4i4p3DLtA==/base.apk
          dataDir=/data/user/0/net.csdn.csdnplus
          stateNotNeeded=false componentSpecified=true mActivityType=standard
          compat={420dpi} labelRes=0x7f11008e icon=0x7f0807ef theme=0x7f12022c
          mLastReportedConfigurations:
           mGlobalConfig={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=undefined} s.161}
           mOverrideConfig={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=standard} s.161}
          CurrentConfiguration={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=standard} s.161}
          taskDescription: label="null" icon=null iconResource=0 iconFilename=null primaryColor=fff5f5f5
           backgroundColor=fffafafa
           statusBarColor=ff757575
           navigationBarColor=ff000000
          launchFailed=false launchCount=0 lastLaunchTime=-1m34s561ms
          haveState=true icicle=Bundle[mParcelledData.dataSize=25948]
          state=STOPPED stopped=true delayedResume=false finishing=false
          keysPaused=false inHistory=true visible=false sleeping=false idle=true mStartingWindowState=STARTING_WINDOW_NOT_SHOWN
          fullscreen=true noDisplay=false immersive=false launchMode=2
          frozenBeforeDestroy=false forceNewConfig=false
          mActivityType=standard
          waitingVisible=false nowVisible=false lastVisibleTime=-1m33s467ms
          connections=[ConnectionRecord{47e823f u0 CR net.csdn.csdnplus/.module.im.socket.JWebSocketClientService:@577de5e}, ConnectionRecord{6447a37 u0 CR net.csdn.csdnplus/.module.im.socket.JWebSocketClientService:@577de5e}]
          resizeMode=RESIZE_MODE_UNRESIZEABLE
          mLastReportedMultiWindowMode=false mLastReportedPictureInPictureMode=false
          maxAspectRatio=2.3

    Running activities (most recent first):
      TaskRecord{818ac96 #2967 A=net.csdn.csdnplus U=0 StackId=365 sz=2}
        Run #1: ActivityRecord{f7f215 u0 net.csdn.csdnplus/.activity.BlogDetailActivity t2967}
        Run #0: ActivityRecord{b5b0b75 u0 net.csdn.csdnplus/.activity.MainActivity t2967}

    mResumedActivity: ActivityRecord{f7f215 u0 net.csdn.csdnplus/.activity.BlogDetailActivity t2967}
    mLastPausedActivity: ActivityRecord{b5b0b75 u0 net.csdn.csdnplus/.activity.MainActivity t2967}

  Stack #0: type=home mode=fullscreen
  isSleeping=false
  mBounds=Rect(0, 0 - 0, 0)

    Task id #2605
    mBounds=Rect(0, 0 - 0, 0)
    mMinWidth=-1
    mMinHeight=-1
    mLastNonFullscreenBounds=null
    * TaskRecord{937f032 #2605 I=com.google.android.apps.nexuslauncher/.NexusLauncherActivity U=0 StackId=0 sz=1}
      userId=0 effectiveUid=u0a64 mCallingUid=u0a64 mUserSetupComplete=true mCallingPackage=com.google.android.apps.nexuslauncher
      intent={act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10000100 cmp=com.google.android.apps.nexuslauncher/.NexusLauncherActivity}
      realActivity=com.google.android.apps.nexuslauncher/.NexusLauncherActivity
      autoRemoveRecents=false isPersistable=true numFullscreen=1 activityType=2
      rootWasReset=false mNeverRelinquishIdentity=true mReuseTask=false mLockTaskAuth=LOCK_TASK_AUTH_PINNABLE
      Activities=[ActivityRecord{958eefd u0 com.google.android.apps.nexuslauncher/.NexusLauncherActivity t2605}]
      askedCompatMode=false inRecents=true isAvailable=true
      mRootProcess=ProcessRecord{1c38859 14689:com.google.android.apps.nexuslauncher/u0a64}
      stackId=0
      hasBeenVisible=true mResizeMode=RESIZE_MODE_RESIZEABLE mSupportsPictureInPicture=false isResizeable=true lastActiveTime=1319802016 (inactive for 100s)
      * Hist #0: ActivityRecord{958eefd u0 com.google.android.apps.nexuslauncher/.NexusLauncherActivity t2605}
          packageName=com.google.android.apps.nexuslauncher processName=com.google.android.apps.nexuslauncher
          launchedFromUid=0 launchedFromPackage=null userId=0
          app=ProcessRecord{1c38859 14689:com.google.android.apps.nexuslauncher/u0a64}
          Intent { act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10000100 cmp=com.google.android.apps.nexuslauncher/.NexusLauncherActivity }
          frontOfTask=true task=TaskRecord{937f032 #2605 I=com.google.android.apps.nexuslauncher/.NexusLauncherActivity U=0 StackId=0 sz=1}
          taskAffinity=null
          realActivity=com.google.android.apps.nexuslauncher/.NexusLauncherActivity
          baseDir=/system/priv-app/NexusLauncherPrebuilt/NexusLauncherPrebuilt.apk
          dataDir=/data/user/0/com.google.android.apps.nexuslauncher
          stateNotNeeded=true componentSpecified=false mActivityType=home
          compat={420dpi} labelRes=0x7f110030 icon=0x7f080039 theme=0x7f120002
          mLastReportedConfigurations:
           mGlobalConfig={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1794, 1080) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=undefined} s.159}
           mOverrideConfig={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=home} s.159}
          CurrentConfiguration={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=home} s.161}
          OverrideConfiguration={0.0 ?mcc?mnc ?localeList ?layoutDir ?swdp ?wdp ?hdp ?density ?lsize ?long ?ldr ?wideColorGamut ?orien ?uimode ?night ?touch ?keyb/?/? ?nav/? winConfig={ mBounds=Rect(0, 0 - 0, 0) mAppBounds=null mWindowingMode=undefined mActivityType=home}}
          taskDescription: label="null" icon=null iconResource=0 iconFilename=null primaryColor=fff5f5f5
           backgroundColor=fffafafa
           statusBarColor=0
           navigationBarColor=0
          launchFailed=false launchCount=0 lastLaunchTime=-7d0h15m12s36ms
          haveState=true icicle=Bundle[mParcelledData.dataSize=4772]
          state=STOPPED stopped=true delayedResume=false finishing=false
          keysPaused=false inHistory=true visible=false sleeping=false idle=true mStartingWindowState=STARTING_WINDOW_NOT_SHOWN
          fullscreen=true noDisplay=false immersive=false launchMode=2
          frozenBeforeDestroy=false forceNewConfig=false
          mActivityType=home
          waitingVisible=false nowVisible=false lastVisibleTime=-1m42s424ms
          connections=[]
          resizeMode=RESIZE_MODE_RESIZEABLE
          mLastReportedMultiWindowMode=false mLastReportedPictureInPictureMode=false

    Running activities (most recent first):
      TaskRecord{937f032 #2605 I=com.google.android.apps.nexuslauncher/.NexusLauncherActivity U=0 StackId=0 sz=1}
        Run #0: ActivityRecord{958eefd u0 com.google.android.apps.nexuslauncher/.NexusLauncherActivity t2605}

    mLastPausedActivity: ActivityRecord{958eefd u0 com.google.android.apps.nexuslauncher/.NexusLauncherActivity t2605}

  Stack #363: type=standard mode=fullscreen
  isSleeping=false
  mBounds=Rect(0, 0 - 0, 0)

    Task id #2965
    mBounds=Rect(0, 0 - 0, 0)
    mMinWidth=-1
    mMinHeight=-1
    mLastNonFullscreenBounds=null
    * TaskRecord{531dc60 #2965 A=com.bgq.novelread U=0 StackId=363 sz=1}
      userId=0 effectiveUid=u0a138 mCallingUid=u0a64 mUserSetupComplete=true mCallingPackage=com.google.android.apps.nexuslauncher
      affinity=com.bgq.novelread
      intent={act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.bgq.novelread/com.bqg.novelread.ui.splash.SplashActivity}
      realActivity=com.bgq.novelread/com.bqg.novelread.ui.splash.SplashActivity
      autoRemoveRecents=false isPersistable=true numFullscreen=1 activityType=1
      rootWasReset=true mNeverRelinquishIdentity=true mReuseTask=false mLockTaskAuth=LOCK_TASK_AUTH_PINNABLE
      Activities=[ActivityRecord{cb06cad u0 com.bgq.novelread/com.bqg.novelread.ui.splash.SplashActivity t2965}]
      askedCompatMode=false inRecents=true isAvailable=true
      mRootProcess=ProcessRecord{d852551 9568:com.bgq.novelread/u0a138}
      stackId=363
      hasBeenVisible=true mResizeMode=RESIZE_MODE_RESIZEABLE_VIA_SDK_VERSION mSupportsPictureInPicture=false isResizeable=true lastActiveTime=1316902441 (inactive for 3000s)
      * Hist #0: ActivityRecord{cb06cad u0 com.bgq.novelread/com.bqg.novelread.ui.splash.SplashActivity t2965}
          packageName=com.bgq.novelread processName=com.bgq.novelread
          launchedFromUid=10064 launchedFromPackage=com.google.android.apps.nexuslauncher userId=0
          app=ProcessRecord{d852551 9568:com.bgq.novelread/u0a138}
          Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.bgq.novelread/com.bqg.novelread.ui.splash.SplashActivity bnds=[35,252][237,510] }
          frontOfTask=true task=TaskRecord{531dc60 #2965 A=com.bgq.novelread U=0 StackId=363 sz=1}
          taskAffinity=com.bgq.novelread
          realActivity=com.bgq.novelread/com.bqg.novelread.ui.splash.SplashActivity
          baseDir=/data/app/com.bgq.novelread-KDa6kmk2keZVGG3XWDretQ==/base.apk
          dataDir=/data/user/0/com.bgq.novelread
          stateNotNeeded=false componentSpecified=true mActivityType=standard
          compat={420dpi} labelRes=0x7f090024 icon=0x7f030000 theme=0x7f0b01b1
          mLastReportedConfigurations:
           mGlobalConfig={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=undefined} s.161}
           mOverrideConfig={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=standard} s.161}
          CurrentConfiguration={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=standard} s.161}
          taskDescription: label="null" icon=null iconResource=0 iconFilename=null primaryColor=ff212121
           backgroundColor=ff303030
           statusBarColor=ff000000
           navigationBarColor=ff000000
          launchFailed=false launchCount=0 lastLaunchTime=-21m22s238ms
          haveState=true icicle=Bundle[EMPTY_PARCEL]
          state=STOPPED stopped=true delayedResume=false finishing=false
          keysPaused=false inHistory=true visible=false sleeping=false idle=true mStartingWindowState=STARTING_WINDOW_REMOVED
          fullscreen=true noDisplay=false immersive=false launchMode=0
          frozenBeforeDestroy=false forceNewConfig=false
          mActivityType=standard
          waitingVisible=false nowVisible=false lastVisibleTime=-21m20s303ms
          resizeMode=RESIZE_MODE_RESIZEABLE_VIA_SDK_VERSION
          mLastReportedMultiWindowMode=false mLastReportedPictureInPictureMode=false

    Running activities (most recent first):
      TaskRecord{531dc60 #2965 A=com.bgq.novelread U=0 StackId=363 sz=1}
        Run #0: ActivityRecord{cb06cad u0 com.bgq.novelread/com.bqg.novelread.ui.splash.SplashActivity t2965}

    mLastPausedActivity: ActivityRecord{cb06cad u0 com.bgq.novelread/com.bqg.novelread.ui.splash.SplashActivity t2965}

  Stack #1: type=assistant mode=fullscreen
  isSleeping=false
  mBounds=Rect(0, 0 - 0, 0)

    Task id #2606
    mBounds=Rect(0, 0 - 0, 0)
    mMinWidth=-1
    mMinHeight=-1
    mLastNonFullscreenBounds=null
    * TaskRecord{a8b11b5 #2606 A=com.tencent.android.qqdownloader.desktopwin U=0 StackId=1 sz=1}
      userId=0 effectiveUid=u0a522 mCallingUid=u0a522 mUserSetupComplete=true mCallingPackage=com.tencent.android.qqdownloader
      affinity=com.tencent.android.qqdownloader.desktopwin
      intent={flg=0x10810000 cmp=com.tencent.android.qqdownloader/com.tencent.pangu.module.desktopwin.nonpermission.NonPermissionMainActivity}
      realActivity=com.tencent.android.qqdownloader/com.tencent.pangu.module.desktopwin.nonpermission.NonPermissionMainActivity
      autoRemoveRecents=false isPersistable=false numFullscreen=0 activityType=4
      rootWasReset=false mNeverRelinquishIdentity=true mReuseTask=false mLockTaskAuth=LOCK_TASK_AUTH_PINNABLE
      Activities=[ActivityRecord{129e742 u0 com.tencent.android.qqdownloader/com.tencent.pangu.module.desktopwin.nonpermission.NonPermissionMainActivity t2606}]
      askedCompatMode=false inRecents=true isAvailable=true
      stackId=1
      hasBeenVisible=true mResizeMode=RESIZE_MODE_RESIZEABLE mSupportsPictureInPicture=false isResizeable=true lastActiveTime=1212990654 (inactive for 106912s)
      * Hist #0: ActivityRecord{129e742 u0 com.tencent.android.qqdownloader/com.tencent.pangu.module.desktopwin.nonpermission.NonPermissionMainActivity t2606}
          packageName=com.tencent.android.qqdownloader processName=com.tencent.android.qqdownloader:daemon
          launchedFromUid=10522 launchedFromPackage=com.tencent.android.qqdownloader userId=0
          app=ProcessRecord{909f72c 6274:com.tencent.android.qqdownloader:daemon/u0a522}
          Intent { flg=0x10810000 cmp=com.tencent.android.qqdownloader/com.tencent.pangu.module.desktopwin.nonpermission.NonPermissionMainActivity (has extras) }
          frontOfTask=true task=TaskRecord{a8b11b5 #2606 A=com.tencent.android.qqdownloader.desktopwin U=0 StackId=1 sz=1}
          taskAffinity=com.tencent.android.qqdownloader.desktopwin
          realActivity=com.tencent.android.qqdownloader/com.tencent.pangu.module.desktopwin.nonpermission.NonPermissionMainActivity
          baseDir=/data/app/com.tencent.android.qqdownloader-w3ar1tHKwTad4VdtNkckzQ==/base.apk
          dataDir=/data/user/0/com.tencent.android.qqdownloader
          stateNotNeeded=false componentSpecified=true mActivityType=assistant
          compat={420dpi} labelRes=0x7f0d006b icon=0x7f0701ad theme=0x103000f
          mLastReportedConfigurations:
           mGlobalConfig={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=undefined} s.161}
           mOverrideConfig={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=assistant} s.161}
          CurrentConfiguration={1.0 460mcc1mnc [zh_CN,en_US,zh_HK_#Hant,ja_JP,ru_BY,ar_JO,ko_KR,ar_XB] ldltr sw411dp w411dp h659dp 420dpi nrml hdr widecg port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 1080, 1794) mAppBounds=Rect(0, 0 - 1080, 1794) mWindowingMode=fullscreen mActivityType=assistant} s.161}
          taskDescription: label="null" icon=null iconResource=0 iconFilename=null primaryColor=ff222222
           backgroundColor=ff000000
           statusBarColor=ff000000
           navigationBarColor=ff000000
          launchFailed=false launchCount=0 lastLaunchTime=-18h8m45s816ms
          haveState=true icicle=Bundle[mParcelledData.dataSize=256]
          state=STOPPED stopped=true delayedResume=false finishing=false
          keysPaused=false inHistory=true visible=false sleeping=false idle=true mStartingWindowState=STARTING_WINDOW_NOT_SHOWN
          fullscreen=false noDisplay=false immersive=false launchMode=3
          frozenBeforeDestroy=false forceNewConfig=false
          mActivityType=assistant
          waitingVisible=false nowVisible=false lastVisibleTime=-18h8m45s579ms
          resizeMode=RESIZE_MODE_RESIZEABLE
          mLastReportedMultiWindowMode=false mLastReportedPictureInPictureMode=false

    Running activities (most recent first):
      TaskRecord{a8b11b5 #2606 A=com.tencent.android.qqdownloader.desktopwin U=0 StackId=1 sz=1}
        Run #0: ActivityRecord{129e742 u0 com.tencent.android.qqdownloader/com.tencent.pangu.module.desktopwin.nonpermission.NonPermissionMainActivity t2606}

    mLastPausedActivity: ActivityRecord{129e742 u0 com.tencent.android.qqdownloader/com.tencent.pangu.module.desktopwin.nonpermission.NonPermissionMainActivity t2606}

  ResumedActivity: ActivityRecord{f7f215 u0 net.csdn.csdnplus/.activity.BlogDetailActivity t2967}
  mFocusedStack=ActivityStack{91b6017 stackId=365 type=standard mode=fullscreen visible=true translucent=false, 1 tasks} mLastFocusedStack=ActivityStack{91b6017 stackId=365 type=standard mode=fullscreen visible=true translucent=false, 1 tasks}
  mCurTaskIdForUser={0=2967}
  mUserStackInFront={}
  displayId=0 stacks=4
   mHomeStack=ActivityStack{d20bb2c stackId=0 type=home mode=fullscreen visible=false translucent=true, 1 tasks}
  isHomeRecentsComponent=true  KeyguardController:
    mKeyguardShowing=false
    mAodShowing=false
    mKeyguardGoingAway=false
    mOccluded=false
    mDismissingKeyguardActivity=null
    mDismissalRequested=false
    mVisibilityTransactionDepth=0
  LockTaskController
    mLockTaskModeState=NONE
    mLockTaskModeTasks=
    mLockTaskPackages (userId:packages)=
      u0:[]

C:\Users\octop>

二、Activity 任务栈信息分析


Task id #2967 是一个任务栈 ,

3967

是任务栈的 id ;

下图中 , 红色矩形框内容是 CSDN 博客页面内容 , 绿色矩形框内容是 CSDN 博客首页内容 ;

默认状态下 , 相同的应用 , 打开的 Activity , 其 Activity 都在同一个任务栈中 ;

三、Activity 在相同 Stack 的不同 Task 情况


默认状态下 , 同一个应用启动的两个 Activity 都在相同 Stack 的相同 Task 中 , 但是如下情况会出现 Activity 在相同 Stack 的不同 Task 中 ;

参考 【Android 应用开发】Activity 任务亲和性 taskAffinity 设置 ( taskAffinity 属性 ) III . 任务亲和性 ( taskAffinity ) 与 FLAG_ACTIVITY_NEW_TASK 标记 章节 , 为 Activity 设置不同于当前包名的 taskAffinity 亲和性 , 然后设置 singleTask 启动模式 , 则新启动的 Activity 放在另一个 Task 中 ;

注意 : 两个 Activity 虽然在不同的 Task 任务中 , 但还是在相同的 Stack 栈中 , 如 : Stack #365: type=standard mode=fullscreen ;

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-09-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
前端-Webpack 之 treeShaking
在 github 上直接观看 markdown 会把图片转存到缓存中,github 转存后的图片清晰度很有问题,因此如果图片看不清,可以移步知乎上的相同文章
grain先森
2019/03/29
6410
前端-Webpack 之 treeShaking
Rollup 与 Webpack 的 Tree-shaking
Rollup 和 Webpack 是目前项目中使用较为广泛的两种打包工具,去年发布的 Vite 中打包所依赖的也是 Rollup;在对界面加载效率要求越来越高的今天,打包工具最终产出的包体积也影响着开发人员对工具的选择,所以对 Tree-shaking 的支持程度和配置的便捷性、有效性就尤为重要了。本文就来简单分析下两者 Tree-shaking 的流程和效果差异。
政采云前端团队
2022/12/01
1.4K0
Rollup 与 Webpack 的 Tree-shaking
Webpack 4教程 - 第七部分 减少打包体积与Tree Shaking
在本次Webpack 4教程中,我们会更进一步讲述项目优化。我们会学习什么是tree shaking以及如何使用它。你会找到让Webpack 4中tree shaking运作起来所需要的东西,并知道怎样从中受益。开始吧!
葡萄城控件
2019/05/25
9450
聊一聊面试中经常被问到的Tree Shaking
天下武功,唯快不破!最新版的 antd 以及 vue 都对 Tree Shaking 提供了支持。我们内部的组件在支持这部分功能时,也专门梳理了相关的特性。这是四月份写的文章了,长时间不用就会忘,复习一下!
前端迷
2020/08/28
2.1K0
聊一聊面试中经常被问到的Tree Shaking
webpack原理(2):ES6 module在Webpack中如何Tree-shaking构建
DCE 作用于模块内(webpack 的 DCE 通过 UglifyJS 完成),而 Tree-shaking 则是在打包的时候通过模块之间的信息打包必须的代码。
周陆军博客
2023/03/18
8020
Tree Shaking
Javascript 绝大多数情况需要通过网络进行加载再执行,加载的文件越小,整体执行时间更短,所以就有了 Tree Shaking 去除无用代码,从而减小文件体积。
政采云前端团队
2022/12/01
7260
Tree Shaking
webpack2 的 tree-shaking 好用吗?
IMWeb前端团队
2018/01/08
1.5K0
webpack2 的 tree-shaking 好用吗?
Webpack 实现 Tree shaking 的前世今生
如果看过 rollup 系列的这篇文章 - 无用代码去哪了?项目减重之 rollup 的 Tree-shaking,那你一定对 tree-shaking 不陌生了。如果对 tree-shaking 相关知识不熟悉,请先点开上面这篇文章花 5 分钟了解一下:什么是 tree-shaking。
zz_jesse
2021/07/12
1.2K0
Webpack 实现 Tree shaking 的前世今生
前端模块化杂记 前言AMD/CMD简介Commonjs简介Module简介Common和Module的区别Module与webpackModule与Babel一些问题总结引用
前端模块化在近几年层出不穷,有Node的CommonJs,也有属于client端的CMD/AMD模式,而ES6本身也出现了Modules,再加上Webpack以及babel的普及,虽然在代码中经常使用到这些用法,但是如果不去深入研究,总觉得是一个黑魔法,无法探测一些问题的根源。
菜的黑人牙膏
2019/01/28
8890
Webpack 的 Tree Shaking 概念详解
webpack 2.0 开始引入 tree shaking 技术,翻译过来的中文意思就是摇树,它可以在打包时忽略没有用到的代码。
张张
2019/12/31
1.3K0
Webpack 的 Tree Shaking 概念详解
Rspack 作者揭秘,你的 Tree Shaking 真的起作用了吗?
本文主要探讨了 Webpack Tree Shaking 的基本概念,而非深入其底层代码实现。相关的代码示例可以在 这里[1] 查看。
童欧巴
2024/05/09
3510
Rspack 作者揭秘,你的 Tree Shaking 真的起作用了吗?
手把手教你撸一个简易的 webpack
随着前端复杂度的不断提升,诞生出很多打包工具,比如最先的grunt,gulp。到后来的webpack和Parcel。但是目前很多脚手架工具,比如vue-cli已经帮我们集成了一些构建工具的使用。有的时候我们可能并不知道其内部的实现原理。其实了解这些工具的工作方式可以帮助我们更好理解和使用这些工具,也方便我们在项目开发中应用。
muwoo
2018/06/11
1.2K1
手把手教你撸一个简易的 webpack
webpack模块化原理-ES module
上一篇文章介绍了webpack对commonjs模块的支持(如果你还没读过,建议你先阅读),这篇文章来探究一下,webpack是如何支持es模块的。
Keller
2021/12/14
1.4K0
构建打包工具Rollup.js入门指南
最近在看Vue源码的时候发现一个新的打包工具Rollup.js,之前没有听说过这个工具,也不了解Rollup.js相比于常用的打包工具webpack有什么异同和优势,随后查了一下了解到Vue,React,D3,Three.js,Moment源码里都有它的身影,Rollup到底什么?这篇文章带你走进Rollup的世界。
用户1462769
2019/08/12
2.6K0
构建打包工具Rollup.js入门指南
关于Rollup那些事
下一代打包工具,这是rollup对自己的定位。如今的前端领域,构建工具并不缺少,每个前端工程师都用过或者听过webpack。可以看到的是像React、Vue等框架的构建工具使用的都是rollup。既然如此,这些框架为什么会选择rollup?它的特性是什么?面对不同场景,我们要怎么选择构建工具?本文将一一为你呈现。
腾讯IVWEB团队
2020/06/24
6920
深入了解 webpack 模块加载原理
无论你开发使用的是 CommonJS 规范还是 ES6 模块规范,打包后的文件都统一使用 webpack 自定义的模块规范来管理、加载模块。本文将从一个简单的示例开始,来讲解 webpack 模块加载原理。
谭光志
2020/09/28
1.4K0
揭秘webpack5模块打包
​在上一节中我们初步了解了webpack可以利用内置静态模块类型(asset module type)来处理资源文件,我们所知道的本地服务,资源的压缩,代码分割,在webpack构建的工程中有一个比较显著的特征是,模块化,要么commonjs要么esModule,在开发环境我们都是基于这两种,那么通过webpack打包后,如何让其支持浏览器能正常的加载两种不同的模式呢?
Maic
2022/07/28
9450
揭秘webpack5模块打包
【模块化】:Webpack 是如何将不同规范(ESM、CJS、UMD、AMD、CMD)的模块化代码打包到一起并协调它们运行的?
在一个项目中同时使用 ES6、CJS、CMD、AMD、UMD 5种不同的模块化规范编写代码,并同时应用静态导入、动态导入(Dynamic Import)方法来引用这些模块。观察 Webpack 是如何将这些不同模块化规范的代码打包到一起和协调它们运行的。
WEBJ2EE
2022/03/30
7.1K2
【模块化】:Webpack 是如何将不同规范(ESM、CJS、UMD、AMD、CMD)的模块化代码打包到一起并协调它们运行的?
从webpack4打包文件说起
一堆的webpack配置教程看腻了?这里有webpack4的打包及加载机制,要不了解一下?而这一切就得从打包文件说起。
elson
2018/08/01
2.9K1
webpack模块化的原理
在webpack中既可以书写commonjs模块也可以书写es模块,而且不用考虑浏览器的兼容性问题,我们来分析一下原理。
gogo2027
2022/10/31
5080
推荐阅读
相关推荐
前端-Webpack 之 treeShaking
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档