summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Shashwat Razdan <srazdan@google.com> 2023-10-25 16:24:50 -0700
committer Shashwat Razdan <srazdan@google.com> 2023-10-25 23:38:21 +0000
commit0931f1f0f62da256922b8cf9b32167a0f6c48bcb (patch)
tree5d9ef2739a76ea502502c8adfe0ed7b0edcc4206
parentc88b5c6727ebcd6c94a13b82288845547c818f4d (diff)
Guarding ACCESS_SMARTSPACE with a flag
Test: Permission only change Bug: 297207196 Bug: 304478692 Change-Id: I8ec0c80e1ad364c0b6bb1b966737045a8fe71679
-rw-r--r--core/java/android/app/smartspace/flags.aconfig7
-rw-r--r--services/smartspace/java/com/android/server/smartspace/SmartspaceManagerService.java4
2 files changed, 10 insertions, 1 deletions
diff --git a/core/java/android/app/smartspace/flags.aconfig b/core/java/android/app/smartspace/flags.aconfig
index 6aefa38ac18c..12af888bfaa5 100644
--- a/core/java/android/app/smartspace/flags.aconfig
+++ b/core/java/android/app/smartspace/flags.aconfig
@@ -6,3 +6,10 @@ flag {
description: "Flag to enable the FlaggedApi to include RemoteViews in SmartspaceTarget"
bug: "300157758"
}
+
+flag {
+ name: "access_smartspace"
+ namespace: "sysui_integrations"
+ description: "Flag to enable the ACCESS_SMARTSPACE check in SmartspaceManagerService"
+ bug: "297207196"
+}
diff --git a/services/smartspace/java/com/android/server/smartspace/SmartspaceManagerService.java b/services/smartspace/java/com/android/server/smartspace/SmartspaceManagerService.java
index ca57f51088f3..8b5d7f09f6fc 100644
--- a/services/smartspace/java/com/android/server/smartspace/SmartspaceManagerService.java
+++ b/services/smartspace/java/com/android/server/smartspace/SmartspaceManagerService.java
@@ -31,6 +31,7 @@ import android.app.smartspace.ISmartspaceManager;
import android.app.smartspace.SmartspaceConfig;
import android.app.smartspace.SmartspaceSessionId;
import android.app.smartspace.SmartspaceTargetEvent;
+import android.app.smartspace.flags.Flags;
import android.content.Context;
import android.os.Binder;
import android.os.IBinder;
@@ -165,7 +166,8 @@ public class SmartspaceManagerService extends
}
Context ctx = getContext();
if (!(ctx.checkCallingPermission(MANAGE_SMARTSPACE) == PERMISSION_GRANTED
- || ctx.checkCallingPermission(ACCESS_SMARTSPACE) == PERMISSION_GRANTED
+ || (Flags.accessSmartspace()
+ && ctx.checkCallingPermission(ACCESS_SMARTSPACE) == PERMISSION_GRANTED)
|| mServiceNameResolver.isTemporary(userId)
|| mActivityTaskManagerInternal.isCallerRecents(Binder.getCallingUid()))) {