diff --git a/api/system-current.txt b/api/system-current.txt index b29fb4b32d7ba..54fc994552e61 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -96,6 +96,7 @@ package android { field public static final java.lang.String FORCE_STOP_PACKAGES = "android.permission.FORCE_STOP_PACKAGES"; field public static final java.lang.String GET_ACCOUNTS = "android.permission.GET_ACCOUNTS"; field public static final java.lang.String GET_APP_OPS_STATS = "android.permission.GET_APP_OPS_STATS"; + field public static final java.lang.String GET_PACKAGE_IMPORTANCE = "android.permission.GET_PACKAGE_IMPORTANCE"; field public static final java.lang.String GET_PACKAGE_SIZE = "android.permission.GET_PACKAGE_SIZE"; field public static final deprecated java.lang.String GET_TASKS = "android.permission.GET_TASKS"; field public static final java.lang.String GET_TOP_ACTIVITY_INFO = "android.permission.GET_TOP_ACTIVITY_INFO"; diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index 4871d90473733..0ebbe5dae4674 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -1340,6 +1340,11 @@ android:description="@string/permdesc_killBackgroundProcesses" android:protectionLevel="normal" /> + + + diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index 9f39e7ce0fa2b..954d34f0db0b2 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -3589,6 +3589,8 @@ public final class ActivityManagerService extends ActivityManagerNative @Override public int getPackageProcessState(String packageName) { + enforceCallingPermission(android.Manifest.permission.GET_PACKAGE_IMPORTANCE, + "getPackageProcessState"); int procState = ActivityManager.PROCESS_STATE_NONEXISTENT; synchronized (this) { for (int i=mLruProcesses.size()-1; i>=0; i--) {