From bee67fb74eb39fbad4f33a73e21547c2dfe90fa5 Mon Sep 17 00:00:00 2001 From: Pavel Grafov Date: Wed, 21 May 2025 17:47:28 +0100 Subject: [SP 2025-09-01] Don't allow hiding SysUi Hiding SystemUI makes the phone impossible to use even when done inside managed profile. Bug: 328182084 Test: manual with custom DPC Flag: EXEMPT bugfix (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:befa3c99b9571d8f28f4974e0c4adfe538eeba66) Merged-In: I847cb6d69db4924b2b3ddb741ac61a8f065e7c78 Change-Id: I847cb6d69db4924b2b3ddb741ac61a8f065e7c78 --- .../core/java/com/android/server/pm/PackageManagerService.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index b60812c1bb53..459c0a457484 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -5957,9 +5957,11 @@ public class PackageManagerService implements PackageSender, TestUtilityService return false; } - // Do not allow "android" is being disabled - if ("android".equals(packageName)) { - Slog.w(TAG, "Cannot hide package: android"); + // Don't allow hiding "android" or SysUI as it makes device unusable. + if ("android".equals(packageName) + || LocalServices.getService(PackageManagerInternal.class) + .getSystemUiServiceComponent().getPackageName().equals(packageName)) { + Slog.w(TAG, "Cannot hide package: " + packageName); return false; } -- cgit v1.2.3-59-g8ed1b