summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/java/com/android/internal/compat/IPlatformCompat.aidl3
-rw-r--r--services/core/java/com/android/server/am/ActivityManagerShellCommand.java8
-rw-r--r--services/core/java/com/android/server/compat/PlatformCompat.java4
3 files changed, 11 insertions, 4 deletions
diff --git a/core/java/com/android/internal/compat/IPlatformCompat.aidl b/core/java/com/android/internal/compat/IPlatformCompat.aidl
index a5eb5f607c12..7aca36af919d 100644
--- a/core/java/com/android/internal/compat/IPlatformCompat.aidl
+++ b/core/java/com/android/internal/compat/IPlatformCompat.aidl
@@ -179,9 +179,10 @@ interface IPlatformCompat {
*
* @param changeId the ID of the change that was overridden
* @param packageName the app package name that was overridden
+ * @return {@code true} if an override existed
* @throws SecurityException if overriding changes is not permitted
*/
- void clearOverrideForTest(long changeId, String packageName);
+ boolean clearOverrideForTest(long changeId, String packageName);
/**
* Enables all compatibility changes that have enabledSinceTargetSdk ==
diff --git a/services/core/java/com/android/server/am/ActivityManagerShellCommand.java b/services/core/java/com/android/server/am/ActivityManagerShellCommand.java
index fe71fbf79157..c971bd2ab6d5 100644
--- a/services/core/java/com/android/server/am/ActivityManagerShellCommand.java
+++ b/services/core/java/com/android/server/am/ActivityManagerShellCommand.java
@@ -2984,7 +2984,13 @@ final class ActivityManagerShellCommand extends ShellCommand {
pw.println("Reset all changes for " + packageName + " to default value.");
return 0;
}
- if (platformCompat.clearOverride(changeId, packageName)) {
+ boolean existed;
+ if (killPackage) {
+ existed = platformCompat.clearOverride(changeId, packageName);
+ } else {
+ existed = platformCompat.clearOverrideForTest(changeId, packageName);
+ }
+ if (existed) {
pw.println("Reset change " + changeId + " for " + packageName
+ " to default value.");
} else {
diff --git a/services/core/java/com/android/server/compat/PlatformCompat.java b/services/core/java/com/android/server/compat/PlatformCompat.java
index 6b2a1c950e38..51ba5f775880 100644
--- a/services/core/java/com/android/server/compat/PlatformCompat.java
+++ b/services/core/java/com/android/server/compat/PlatformCompat.java
@@ -211,9 +211,9 @@ public class PlatformCompat extends IPlatformCompat.Stub {
}
@Override
- public void clearOverrideForTest(long changeId, String packageName) {
+ public boolean clearOverrideForTest(long changeId, String packageName) {
checkCompatChangeOverridePermission();
- mCompatConfig.removeOverride(changeId, packageName);
+ return mCompatConfig.removeOverride(changeId, packageName);
}
@Override