summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--media/java/android/media/permission/PermissionUtil.java53
-rw-r--r--services/core/java/com/android/server/soundtrigger_middleware/SoundTriggerMiddlewarePermission.java7
2 files changed, 2 insertions, 58 deletions
diff --git a/media/java/android/media/permission/PermissionUtil.java b/media/java/android/media/permission/PermissionUtil.java
index 458f11243f68..315ee4f1e998 100644
--- a/media/java/android/media/permission/PermissionUtil.java
+++ b/media/java/android/media/permission/PermissionUtil.java
@@ -17,10 +17,8 @@
package android.media.permission;
import android.annotation.NonNull;
-import android.app.AppOpsManager;
import android.content.Context;
import android.content.PermissionChecker;
-import android.content.pm.PackageManager;
import android.os.Binder;
import java.util.Objects;
@@ -180,57 +178,6 @@ public class PermissionUtil {
}
/**
- * Checks whether the given identity has the given permission to receive data.
- *
- * This variant ignores the proc-state for the sake of the check, i.e. overrides any
- * restrictions that apply specifically to apps running in the background.
- *
- * TODO(ytai): This is a temporary hack until we have permissions that are specifically intended
- * for background microphone access.
- *
- * @param context A {@link Context}, used for permission checks.
- * @param identity The identity to check.
- * @param permission The identifier of the permission we want to check.
- * @param reason The reason why we're requesting the permission, for auditing purposes.
- * @return The permission check result which is either
- * {@link PermissionChecker#PERMISSION_GRANTED}
- * or {@link PermissionChecker#PERMISSION_SOFT_DENIED} or
- * {@link PermissionChecker#PERMISSION_HARD_DENIED}.
- */
- public static int checkPermissionForDataDeliveryIgnoreProcState(@NonNull Context context,
- @NonNull Identity identity,
- @NonNull String permission,
- @NonNull String reason) {
- if (context.checkPermission(permission, identity.pid, identity.uid)
- != PackageManager.PERMISSION_GRANTED) {
- return PermissionChecker.PERMISSION_HARD_DENIED;
- }
-
- String appOpOfPermission = AppOpsManager.permissionToOp(permission);
- if (appOpOfPermission == null) {
- // not platform defined
- return PermissionChecker.PERMISSION_GRANTED;
- }
-
- String packageName = identity.packageName;
- if (packageName == null) {
- String[] packageNames = context.getPackageManager().getPackagesForUid(identity.uid);
- if (packageNames != null && packageNames.length > 0) {
- packageName = packageNames[0];
- }
- }
-
- final AppOpsManager appOpsManager = context.getSystemService(AppOpsManager.class);
-
- int appOpMode = appOpsManager.unsafeCheckOpRawNoThrow(appOpOfPermission, identity.uid,
- packageName);
- if (appOpMode == AppOpsManager.MODE_ALLOWED) {
- return PermissionChecker.PERMISSION_GRANTED;
- }
- return PermissionChecker.PERMISSION_SOFT_DENIED;
- }
-
- /**
* Checks whether the given identity has the given permission.
*
* @param context A {@link Context}, used for permission checks.
diff --git a/services/core/java/com/android/server/soundtrigger_middleware/SoundTriggerMiddlewarePermission.java b/services/core/java/com/android/server/soundtrigger_middleware/SoundTriggerMiddlewarePermission.java
index 51b00faa28d2..d5ab574b5617 100644
--- a/services/core/java/com/android/server/soundtrigger_middleware/SoundTriggerMiddlewarePermission.java
+++ b/services/core/java/com/android/server/soundtrigger_middleware/SoundTriggerMiddlewarePermission.java
@@ -149,11 +149,8 @@ public class SoundTriggerMiddlewarePermission implements ISoundTriggerMiddleware
private static void enforcePermissionForDataDelivery(@NonNull Context context,
@NonNull Identity identity,
@NonNull String permission, @NonNull String reason) {
- // TODO(ytai): We're temporarily ignoring proc state until we have a proper permission that
- // represents being able to use the microphone in the background. Otherwise, some of our
- // existing use-cases would break.
- final int status = PermissionUtil.checkPermissionForDataDeliveryIgnoreProcState(context,
- identity, permission, reason);
+ final int status = PermissionUtil.checkPermissionForDataDelivery(context, identity,
+ permission, reason);
if (status != PermissionChecker.PERMISSION_GRANTED) {
throw new SecurityException(
String.format("Failed to obtain permission %s for identity %s", permission,