diff --git a/services/core/java/com/android/server/wm/ActivityStackSupervisor.java b/services/core/java/com/android/server/wm/ActivityStackSupervisor.java index 77b331e6c4a9c..f040dd41002be 100644 --- a/services/core/java/com/android/server/wm/ActivityStackSupervisor.java +++ b/services/core/java/com/android/server/wm/ActivityStackSupervisor.java @@ -2611,8 +2611,7 @@ public class ActivityStackSupervisor extends ConfigurationContainer implements D } ActivityRecord getDefaultDisplayHomeActivityForUser(int userId) { - getActivityDisplay(DEFAULT_DISPLAY).getHomeActivityForUser(userId); - return null; + return getActivityDisplay(DEFAULT_DISPLAY).getHomeActivityForUser(userId); } void resizeStackLocked(ActivityStack stack, Rect bounds, Rect tempTaskBounds, diff --git a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java index 3ede8bc818e08..195f0485117ed 100644 --- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java +++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java @@ -6296,8 +6296,11 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub { FLAG_ACTIVITY_TASK_ON_HOME); ActivityOptions activityOptions = options != null ? new ActivityOptions(options) : ActivityOptions.makeBasic(); - activityOptions.setLaunchTaskId( - mStackSupervisor.getDefaultDisplayHomeActivity().getTask().taskId); + final ActivityRecord homeActivity = + mStackSupervisor.getDefaultDisplayHomeActivity(); + if (homeActivity != null) { + activityOptions.setLaunchTaskId(homeActivity.getTask().taskId); + } mContext.startActivityAsUser(intent, activityOptions.toBundle(), UserHandle.CURRENT); } finally {