summaryrefslogtreecommitdiffstats
path: root/services/core/java/com/android/server/pm/PackageSettingBase.java
diff options
context:
space:
mode:
authorKenny Guy <kennyguy@google.com>2014-05-29 14:17:17 +0100
committerKenny Guy <kennyguy@google.com>2014-07-04 11:35:17 +0000
commitc13053bf1c05b980421611487ce67677c08db299 (patch)
tree79439cc8fbac37dc0b19c9f4dc920e4edf0486ed /services/core/java/com/android/server/pm/PackageSettingBase.java
parentfb2f7d60a3dde642e7793e7f917cdc3e23446897 (diff)
downloadframeworks_base-c13053bf1c05b980421611487ce67677c08db299.zip
frameworks_base-c13053bf1c05b980421611487ce67677c08db299.tar.gz
frameworks_base-c13053bf1c05b980421611487ce67677c08db299.tar.bz2
Add package state to block uninstall.
Add package state to allow profile or device owners to block uninstall of packages. Add API to DevicePolicyManager to set/get the state. Bug: 14127299 Change-Id: I03528819850b42df7bafa7747bb9e4558d20c4e6
Diffstat (limited to 'services/core/java/com/android/server/pm/PackageSettingBase.java')
-rw-r--r--services/core/java/com/android/server/pm/PackageSettingBase.java11
1 files changed, 10 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/pm/PackageSettingBase.java b/services/core/java/com/android/server/pm/PackageSettingBase.java
index 2091c16..f263e07 100644
--- a/services/core/java/com/android/server/pm/PackageSettingBase.java
+++ b/services/core/java/com/android/server/pm/PackageSettingBase.java
@@ -275,10 +275,18 @@ class PackageSettingBase extends GrantedPermissions {
modifyUserState(userId).blocked = blocked;
}
+ boolean getBlockUninstall(int userId) {
+ return readUserState(userId).blockUninstall;
+ }
+
+ void setBlockUninstall(boolean blockUninstall, int userId) {
+ modifyUserState(userId).blockUninstall = blockUninstall;
+ }
+
void setUserState(int userId, int enabled, boolean installed, boolean stopped,
boolean notLaunched, boolean blocked,
String lastDisableAppCaller, HashSet<String> enabledComponents,
- HashSet<String> disabledComponents) {
+ HashSet<String> disabledComponents, boolean blockUninstall) {
PackageUserState state = modifyUserState(userId);
state.enabled = enabled;
state.installed = installed;
@@ -288,6 +296,7 @@ class PackageSettingBase extends GrantedPermissions {
state.lastDisableAppCaller = lastDisableAppCaller;
state.enabledComponents = enabledComponents;
state.disabledComponents = disabledComponents;
+ state.blockUninstall = blockUninstall;
}
HashSet<String> getEnabledComponents(int userId) {