diff options
| -rw-r--r-- | services/core/java/com/android/server/am/ActivityManagerService.java | 7 | ||||
| -rw-r--r-- | services/core/java/com/android/server/am/ActivityStarter.java | 18 |
2 files changed, 19 insertions, 6 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index 4d44b6353ef8..14be25b6690f 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -24015,6 +24015,13 @@ public class ActivityManagerService extends IActivityManager.Stub if (reason != null) { pw.println(" Reason: " + reason); } + pw.println(" mLastHomeActivityStartResult: " + + mActivityStarter.mLastHomeActivityStartResult); + final ActivityRecord r = mActivityStarter.mLastHomeActivityStartRecord[0]; + if (r != null) { + pw.println(" mLastHomeActivityStartRecord:"); + r.dump(pw, " "); + } pw.println(); dumpActivitiesLocked(null /* fd */, pw, null /* args */, 0 /* opti */, true /* dumpAll */, false /* dumpClient */, null /* dumpPackage */, diff --git a/services/core/java/com/android/server/am/ActivityStarter.java b/services/core/java/com/android/server/am/ActivityStarter.java index 1ed2ac19ea9d..d74d1d6dc954 100644 --- a/services/core/java/com/android/server/am/ActivityStarter.java +++ b/services/core/java/com/android/server/am/ActivityStarter.java @@ -188,6 +188,11 @@ class ActivityStarter { private boolean mUsingVr2dDisplay; + // Last home activity record we attempted to start + final ActivityRecord[] mLastHomeActivityStartRecord = new ActivityRecord[1]; + // The result of the last home activity we attempted to start. + int mLastHomeActivityStartResult; + private void reset() { mStartActivity = null; mIntent = null; @@ -592,12 +597,13 @@ class ActivityStarter { void startHomeActivityLocked(Intent intent, ActivityInfo aInfo, String reason) { mSupervisor.moveHomeStackTaskToTop(reason); - startActivityLocked(null /*caller*/, intent, null /*ephemeralIntent*/, - null /*resolvedType*/, aInfo, null /*rInfo*/, null /*voiceSession*/, - null /*voiceInteractor*/, null /*resultTo*/, null /*resultWho*/, - 0 /*requestCode*/, 0 /*callingPid*/, 0 /*callingUid*/, null /*callingPackage*/, - 0 /*realCallingPid*/, 0 /*realCallingUid*/, 0 /*startFlags*/, null /*options*/, - false /*ignoreTargetSecurity*/, false /*componentSpecified*/, null /*outActivity*/, + mLastHomeActivityStartResult = startActivityLocked(null /*caller*/, intent, + null /*ephemeralIntent*/, null /*resolvedType*/, aInfo, null /*rInfo*/, + null /*voiceSession*/, null /*voiceInteractor*/, null /*resultTo*/, + null /*resultWho*/, 0 /*requestCode*/, 0 /*callingPid*/, 0 /*callingUid*/, + null /*callingPackage*/, 0 /*realCallingPid*/, 0 /*realCallingUid*/, + 0 /*startFlags*/, null /*options*/, false /*ignoreTargetSecurity*/, + false /*componentSpecified*/, mLastHomeActivityStartRecord /*outActivity*/, null /*container*/, null /*inTask*/); if (mSupervisor.inResumeTopActivity) { // If we are in resume section already, home activity will be initialized, but not |