From 1a7b160ca5bf1b0dcf70747e2d1b6457e2ce10bb Mon Sep 17 00:00:00 2001 From: Ricky Wai Date: Fri, 15 Jul 2016 15:44:07 +0100 Subject: [PATCH] Do not allow to disable package "android" Bug: 25337001 Change-Id: I837d70898f00d3c97c8ae1f5eadd0791ba045df6 --- .../java/com/android/server/pm/PackageManagerService.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 1ca61480973a2..74ef99d738e84 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -11704,12 +11704,18 @@ public class PackageManagerService extends IPackageManager.Stub { if (pkgSetting == null) { return false; } + // Do not allow "android" is being disabled + if ("android".equals(packageName)) { + Slog.w(TAG, "Cannot hide package: android"); + return false; + } // Only allow protected packages to hide themselves. if (hidden && !UserHandle.isSameApp(uid, pkgSetting.appId) && mProtectedPackages.isPackageStateProtected(userId, packageName)) { Slog.w(TAG, "Not hiding protected package: " + packageName); return false; } + if (pkgSetting.getHidden(userId) != hidden) { pkgSetting.setHidden(hidden, userId); mSettings.writePackageRestrictionsLPr(userId);