diff --git a/services/core/java/com/android/server/wm/ActivityStackSupervisor.java b/services/core/java/com/android/server/wm/ActivityStackSupervisor.java index f32761e278000..6034f81f9cc87 100644 --- a/services/core/java/com/android/server/wm/ActivityStackSupervisor.java +++ b/services/core/java/com/android/server/wm/ActivityStackSupervisor.java @@ -2626,8 +2626,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 89193f76a538f..433c05a8693d3 100644 --- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java +++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java @@ -6267,8 +6267,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 {