summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Andrei-Valentin Onea <andreionea@google.com> 2020-09-10 16:03:42 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2020-09-10 16:03:42 +0000
commitf7413e54fb06e4ccf4aa379df764c00d4169514b (patch)
tree6f05fbe1a240d21c637bdf172a21d00b4ccc1663
parentb14eb03c50ca8924724dfb740d5971ac4edbbd70 (diff)
parent93541b9c0bdb60a9c32de411bda4fc4ad684296d (diff)
Merge "Add non-logging method to PlatformCompat"
-rw-r--r--services/core/java/com/android/server/compat/PlatformCompat.java22
-rw-r--r--services/core/java/com/android/server/pm/AppsFilter.java3
2 files changed, 16 insertions, 9 deletions
diff --git a/services/core/java/com/android/server/compat/PlatformCompat.java b/services/core/java/com/android/server/compat/PlatformCompat.java
index 92fce8a22937..c7de8d3d585f 100644
--- a/services/core/java/com/android/server/compat/PlatformCompat.java
+++ b/services/core/java/com/android/server/compat/PlatformCompat.java
@@ -107,17 +107,23 @@ public class PlatformCompat extends IPlatformCompat.Stub {
}
/**
- * Internal version of the above method. Does not perform costly permission check.
+ * Internal version of the above method, without logging. Does not perform costly permission
+ * check.
+ * TODO(b/167551701): Remove this method and add 'loggability' as a changeid property.
+ */
+ public boolean isChangeEnabledInternalNoLogging(long changeId, ApplicationInfo appInfo) {
+ return mCompatConfig.isChangeEnabled(changeId, appInfo);
+ }
+
+ /**
+ * Internal version of {@link #isChangeEnabled(long, ApplicationInfo)}. Does not perform costly
+ * permission check.
*/
public boolean isChangeEnabledInternal(long changeId, ApplicationInfo appInfo) {
- if (mCompatConfig.isChangeEnabled(changeId, appInfo)) {
- reportChange(changeId, appInfo.uid,
- ChangeReporter.STATE_ENABLED);
- return true;
- }
+ boolean value = isChangeEnabledInternalNoLogging(changeId, appInfo);
reportChange(changeId, appInfo.uid,
- ChangeReporter.STATE_DISABLED);
- return false;
+ value ? ChangeReporter.STATE_ENABLED : ChangeReporter.STATE_DISABLED);
+ return value;
}
@Override
diff --git a/services/core/java/com/android/server/pm/AppsFilter.java b/services/core/java/com/android/server/pm/AppsFilter.java
index f168ac70dda8..6d24a3bc0cd4 100644
--- a/services/core/java/com/android/server/pm/AppsFilter.java
+++ b/services/core/java/com/android/server/pm/AppsFilter.java
@@ -303,7 +303,8 @@ public class AppsFilter {
private void updateEnabledState(@NonNull AndroidPackage pkg) {
// TODO(b/135203078): Do not use toAppInfo
- final boolean enabled = mInjector.getCompatibility().isChangeEnabledInternal(
+ // TODO(b/167551701): Make changeId non-logging
+ final boolean enabled = mInjector.getCompatibility().isChangeEnabledInternalNoLogging(
PackageManager.FILTER_APPLICATION_QUERY, pkg.toAppInfoWithoutState());
if (enabled) {
mDisabledPackages.remove(pkg.getPackageName());