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

Commit 75aee67e authored by Alex Johnston's avatar Alex Johnston
Browse files

Add DPM EXEMPT_FROM_SUSPENSION constant

Replace app standby constant as this is no longer
needed and will be covered as part of the power
restriction exemptions

Also remove the while in user permission exemption,
this is no longer in scope.

Bug: 246330879
Test: atest ApplicationExemptionsTest
Change-Id: Ida468e99d0662c9782e5098e657285cf52090f73
parent 28ad0bee
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -1299,11 +1299,10 @@ package android.app.admin {
    field @Deprecated public static final String ACTION_STATE_USER_SETUP_COMPLETE = "android.app.action.STATE_USER_SETUP_COMPLETE";
    field @RequiresPermission(android.Manifest.permission.LAUNCH_DEVICE_MANAGER_SETUP) public static final String ACTION_UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER = "android.app.action.UPDATE_DEVICE_POLICY_MANAGEMENT_ROLE_HOLDER";
    field public static final int EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION = 2; // 0x2
    field public static final int EXEMPT_FROM_APP_STANDBY = 0; // 0x0
    field public static final int EXEMPT_FROM_DISMISSIBLE_NOTIFICATIONS = 1; // 0x1
    field public static final int EXEMPT_FROM_FGS_BG_START_WHILE_IN_USE_PERMISSION_RESTRICTION = 4; // 0x4
    field public static final int EXEMPT_FROM_HIBERNATION = 3; // 0x3
    field public static final int EXEMPT_FROM_POWER_RESTRICTIONS = 5; // 0x5
    field public static final int EXEMPT_FROM_POWER_RESTRICTIONS = 4; // 0x4
    field public static final int EXEMPT_FROM_SUSPENSION = 0; // 0x0
    field public static final String EXTRA_FORCE_UPDATE_ROLE_HOLDER = "android.app.extra.FORCE_UPDATE_ROLE_HOLDER";
    field public static final String EXTRA_LOST_MODE_LOCATION = "android.app.extra.LOST_MODE_LOCATION";
    field public static final String EXTRA_PROFILE_OWNER_NAME = "android.app.extra.PROFILE_OWNER_NAME";
+5 −16
Original line number Diff line number Diff line
@@ -3886,18 +3886,17 @@ public class DevicePolicyManager {
    public static final int OPERATION_SAFETY_REASON_DRIVING_DISTRACTION = 1;
    /**
     * Prevent an app from being placed into app standby buckets, such that it will not be subject
     * to device resources restrictions as a result of app standby buckets.
     * Prevent an app from being suspended.
     *
     * @hide
     */
    @SystemApi
    public static final int EXEMPT_FROM_APP_STANDBY =  0;
    public static final int EXEMPT_FROM_SUSPENSION =  0;
    /**
     * Prevent an app from dismissible notifications. Starting from Android U, notifications with
     * the ongoing parameter can be dismissed by a user on an unlocked device. An app with
     * this exemption can create non-dismissable notifications.
     * this exemption can create non-dismissible notifications.
     *
     * @hide
     */
@@ -3920,15 +3919,6 @@ public class DevicePolicyManager {
    @SystemApi
    public static final int EXEMPT_FROM_HIBERNATION =  3;
    /**
     * Exempt an app from the start foreground service from background with while in user permission
     * restriction.
     *
     * @hide
     */
    @SystemApi
    public static final int EXEMPT_FROM_FGS_BG_START_WHILE_IN_USE_PERMISSION_RESTRICTION =  4;
    /**
     * Exempt an app from all power-related restrictions, including app standby and doze.
     * In addition, the app will be able to start foreground services from the background,
@@ -3937,7 +3927,7 @@ public class DevicePolicyManager {
     * @hide
     */
    @SystemApi
    public static final int EXEMPT_FROM_POWER_RESTRICTIONS =  5;
    public static final int EXEMPT_FROM_POWER_RESTRICTIONS =  4;
    /**
     * Exemptions to platform restrictions, given to an application through
@@ -3946,11 +3936,10 @@ public class DevicePolicyManager {
     * @hide
     */
    @IntDef(prefix = { "EXEMPT_FROM_"}, value = {
            EXEMPT_FROM_APP_STANDBY,
            EXEMPT_FROM_SUSPENSION,
            EXEMPT_FROM_DISMISSIBLE_NOTIFICATIONS,
            EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION,
            EXEMPT_FROM_HIBERNATION,
            EXEMPT_FROM_FGS_BG_START_WHILE_IN_USE_PERMISSION_RESTRICTION,
            EXEMPT_FROM_POWER_RESTRICTIONS
    })
    @Retention(RetentionPolicy.SOURCE)
+3 −8
Original line number Diff line number Diff line
@@ -48,11 +48,10 @@ import static android.app.ActivityManager.LOCK_TASK_MODE_NONE;
import static android.app.AppOpsManager.MODE_ALLOWED;
import static android.app.AppOpsManager.MODE_DEFAULT;
import static android.app.AppOpsManager.OPSTR_SYSTEM_EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION;
import static android.app.AppOpsManager.OPSTR_SYSTEM_EXEMPT_FROM_APP_STANDBY;
import static android.app.AppOpsManager.OPSTR_SYSTEM_EXEMPT_FROM_DISMISSIBLE_NOTIFICATIONS;
import static android.app.AppOpsManager.OPSTR_SYSTEM_EXEMPT_FROM_FGS_BG_START_WHILE_IN_USE_PERMISSION_RESTRICTION;
import static android.app.AppOpsManager.OPSTR_SYSTEM_EXEMPT_FROM_HIBERNATION;
import static android.app.AppOpsManager.OPSTR_SYSTEM_EXEMPT_FROM_POWER_RESTRICTIONS;
import static android.app.AppOpsManager.OPSTR_SYSTEM_EXEMPT_FROM_SUSPENSION;
import static android.app.admin.DeviceAdminInfo.HEADLESS_DEVICE_OWNER_MODE_AFFILIATED;
import static android.app.admin.DeviceAdminReceiver.ACTION_COMPLIANCE_ACKNOWLEDGEMENT_REQUIRED;
import static android.app.admin.DeviceAdminReceiver.EXTRA_TRANSFER_OWNERSHIP_ADMIN_EXTRAS_BUNDLE;
@@ -79,11 +78,10 @@ import static android.app.admin.DevicePolicyManager.DEVICE_OWNER_TYPE_DEFAULT;
import static android.app.admin.DevicePolicyManager.DEVICE_OWNER_TYPE_FINANCED;
import static android.app.admin.DevicePolicyManager.ENCRYPTION_STATUS_ACTIVE_PER_USER;
import static android.app.admin.DevicePolicyManager.EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION;
import static android.app.admin.DevicePolicyManager.EXEMPT_FROM_APP_STANDBY;
import static android.app.admin.DevicePolicyManager.EXEMPT_FROM_DISMISSIBLE_NOTIFICATIONS;
import static android.app.admin.DevicePolicyManager.EXEMPT_FROM_FGS_BG_START_WHILE_IN_USE_PERMISSION_RESTRICTION;
import static android.app.admin.DevicePolicyManager.EXEMPT_FROM_HIBERNATION;
import static android.app.admin.DevicePolicyManager.EXEMPT_FROM_POWER_RESTRICTIONS;
import static android.app.admin.DevicePolicyManager.EXEMPT_FROM_SUSPENSION;
import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE;
import static android.app.admin.DevicePolicyManager.EXTRA_RESOURCE_IDS;
import static android.app.admin.DevicePolicyManager.EXTRA_RESOURCE_TYPE;
@@ -749,7 +747,7 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
            new ArrayMap<>();
    static {
        APPLICATION_EXEMPTION_CONSTANTS_TO_APP_OPS.put(
                EXEMPT_FROM_APP_STANDBY, OPSTR_SYSTEM_EXEMPT_FROM_APP_STANDBY);
                EXEMPT_FROM_SUSPENSION, OPSTR_SYSTEM_EXEMPT_FROM_SUSPENSION);
        APPLICATION_EXEMPTION_CONSTANTS_TO_APP_OPS.put(
                EXEMPT_FROM_DISMISSIBLE_NOTIFICATIONS,
                OPSTR_SYSTEM_EXEMPT_FROM_DISMISSIBLE_NOTIFICATIONS);
@@ -758,9 +756,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
                OPSTR_SYSTEM_EXEMPT_FROM_ACTIVITY_BG_START_RESTRICTION);
        APPLICATION_EXEMPTION_CONSTANTS_TO_APP_OPS.put(
                EXEMPT_FROM_HIBERNATION, OPSTR_SYSTEM_EXEMPT_FROM_HIBERNATION);
        APPLICATION_EXEMPTION_CONSTANTS_TO_APP_OPS.put(
                EXEMPT_FROM_FGS_BG_START_WHILE_IN_USE_PERMISSION_RESTRICTION,
                OPSTR_SYSTEM_EXEMPT_FROM_FGS_BG_START_WHILE_IN_USE_PERMISSION_RESTRICTION);
        APPLICATION_EXEMPTION_CONSTANTS_TO_APP_OPS.put(
                EXEMPT_FROM_POWER_RESTRICTIONS, OPSTR_SYSTEM_EXEMPT_FROM_POWER_RESTRICTIONS);
    }