Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4eee5b05 authored by Nate Myren's avatar Nate Myren Committed by Android (Google) Code Review
Browse files

Merge "Add WATCHABLE_NON_PERMISSION_OPS to AppOpsService"

parents fa3f5086 8ecc69ff
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -573,6 +573,7 @@ package android.app {
    field public static final String OPSTR_READ_MEDIA_AUDIO = "android:read_media_audio";
    field public static final String OPSTR_READ_MEDIA_IMAGES = "android:read_media_images";
    field public static final String OPSTR_READ_MEDIA_VIDEO = "android:read_media_video";
    field public static final String OPSTR_RECEIVE_AMBIENT_TRIGGER_AUDIO = "android:receive_ambient_trigger_audio";
    field public static final String OPSTR_RECEIVE_EMERGENCY_BROADCAST = "android:receive_emergency_broadcast";
    field public static final String OPSTR_REQUEST_DELETE_PACKAGES = "android:request_delete_packages";
    field public static final String OPSTR_REQUEST_INSTALL_PACKAGES = "android:request_install_packages";
+1 −0
Original line number Diff line number Diff line
@@ -1812,6 +1812,7 @@ public class AppOpsManager {
     *
     * @hide
     */
    @SystemApi
    public static final String OPSTR_RECEIVE_AMBIENT_TRIGGER_AUDIO =
            "android:receive_ambient_trigger_audio";

+8 −0
Original line number Diff line number Diff line
@@ -267,6 +267,10 @@ public class AppOpsService extends IAppOpsService.Stub implements PersistenceSch
            OP_CAMERA,
    };

    private static final int[] WATCHABLE_NON_PERMISSION_OPS = {
            OP_RECEIVE_AMBIENT_TRIGGER_AUDIO,
    };

    private static final int MAX_UNFORWARDED_OPS = 10;
    private static final int MAX_UNUSED_POOLED_OBJECTS = 3;
    private static final int RARELY_USED_PACKAGES_INITIALIZATION_DELAY_MILLIS = 300000;
@@ -4248,6 +4252,10 @@ public class AppOpsService extends IAppOpsService.Stub implements PersistenceSch
    public boolean shouldCollectNotes(int opCode) {
        Preconditions.checkArgumentInRange(opCode, 0, _NUM_OP - 1, "opCode");

        if (ArrayUtils.contains(WATCHABLE_NON_PERMISSION_OPS, opCode)) {
            return true;
        }

        String perm = AppOpsManager.opToPermission(opCode);
        if (perm == null) {
            return false;