From 0543b2123db840faaf39454a4c4b9fdd8860fec7 Mon Sep 17 00:00:00 2001 From: Louis Chang Date: Tue, 21 Dec 2021 17:35:08 +0800 Subject: [PATCH] Stop supporting System UID to embed a separate task Not seeing a strong use case that really needs to have a separate Task being embedded. Bug: 211571939 Test: atest TaskFragmentOrganizerPolicyTest Test: atest SplitActivityLifecycleTest Test: atest TaskFragmentOrganizerTest Change-Id: I57537a6a21b0e54762b599fd7d18b3322f6006ea --- .../com/android/server/wm/ActivityStarter.java | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/services/core/java/com/android/server/wm/ActivityStarter.java b/services/core/java/com/android/server/wm/ActivityStarter.java index ef0ee1206208a..167d200c593e8 100644 --- a/services/core/java/com/android/server/wm/ActivityStarter.java +++ b/services/core/java/com/android/server/wm/ActivityStarter.java @@ -2014,22 +2014,12 @@ class ActivityStarter { private boolean canEmbedActivity(@NonNull TaskFragment taskFragment, @NonNull ActivityRecord starting, boolean newTask, Task targetTask) { final Task hostTask = taskFragment.getTask(); - if (hostTask == null) { + // Not allowed embedding a separate task or without host task. + if (hostTask == null || newTask || targetTask != hostTask) { return false; } - // Allowing the embedding if the task is owned by system. - final int hostUid = hostTask.effectiveUid; - if (UserHandle.getAppId(hostUid) == Process.SYSTEM_UID) { - return true; - } - - if (!taskFragment.isAllowedToEmbedActivity(starting)) { - return false; - } - - // Not allowed embedding task. - return !newTask && (targetTask == null || targetTask == hostTask); + return taskFragment.isAllowedToEmbedActivity(starting); } /**