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

Commit a0946d59 authored by Kholoud Mohamed's avatar Kholoud Mohamed Committed by Automerger Merge Worker
Browse files

Merge "Fix bug in userControlDisabledPackages on reboot" into udc-dev am: 0008bee5

parents ce15af46 0008bee5
Loading
Loading
Loading
Loading
+6 −2
Original line number Original line Diff line number Diff line
@@ -3575,8 +3575,10 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
    void handleStartUser(int userId) {
    void handleStartUser(int userId) {
        synchronized (getLockObject()) {
        synchronized (getLockObject()) {
            pushScreenCapturePolicy(userId);
            pushScreenCapturePolicy(userId);
            if (!isPolicyEngineForFinanceFlagEnabled()) {
                pushUserControlDisabledPackagesLocked(userId);
                pushUserControlDisabledPackagesLocked(userId);
            }
            }
        }
        pushUserRestrictions(userId);
        pushUserRestrictions(userId);
        // When system user is started (device boot), load cache for all users.
        // When system user is started (device boot), load cache for all users.
        // This is to mitigate the potential race between loading the cache and keyguard
        // This is to mitigate the potential race between loading the cache and keyguard
@@ -10062,7 +10064,9 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
        setNetworkLoggingActiveInternal(false);
        setNetworkLoggingActiveInternal(false);
        deleteTransferOwnershipBundleLocked(userId);
        deleteTransferOwnershipBundleLocked(userId);
        toggleBackupServiceActive(UserHandle.USER_SYSTEM, true);
        toggleBackupServiceActive(UserHandle.USER_SYSTEM, true);
        if (!isPolicyEngineForFinanceFlagEnabled()) {
            pushUserControlDisabledPackagesLocked(userId);
            pushUserControlDisabledPackagesLocked(userId);
        }
        setGlobalSettingDeviceOwnerType(DEVICE_OWNER_TYPE_DEFAULT);
        setGlobalSettingDeviceOwnerType(DEVICE_OWNER_TYPE_DEFAULT);
        if (isPolicyEngineForFinanceFlagEnabled() || isPermissionCheckFlagEnabled()) {
        if (isPolicyEngineForFinanceFlagEnabled() || isPermissionCheckFlagEnabled()) {
+11 −5
Original line number Original line Diff line number Diff line
@@ -26,6 +26,7 @@ import android.app.admin.PackagePermissionPolicyKey;
import android.app.admin.PackagePolicyKey;
import android.app.admin.PackagePolicyKey;
import android.app.admin.PolicyKey;
import android.app.admin.PolicyKey;
import android.app.admin.UserRestrictionPolicyKey;
import android.app.admin.UserRestrictionPolicyKey;
import android.app.usage.UsageStatsManagerInternal;
import android.content.ComponentName;
import android.content.ComponentName;
import android.content.Context;
import android.content.Context;
import android.content.IntentFilter;
import android.content.IntentFilter;
@@ -38,6 +39,7 @@ import android.os.UserHandle;
import android.permission.AdminPermissionControlParams;
import android.permission.AdminPermissionControlParams;
import android.permission.PermissionControllerManager;
import android.permission.PermissionControllerManager;
import android.provider.Settings;
import android.provider.Settings;
import android.util.ArraySet;
import android.util.Slog;
import android.util.Slog;


import com.android.server.LocalServices;
import com.android.server.LocalServices;
@@ -151,11 +153,15 @@ final class PolicyEnforcerCallbacks {


    static boolean setUserControlDisabledPackages(
    static boolean setUserControlDisabledPackages(
            @Nullable Set<String> packages, int userId) {
            @Nullable Set<String> packages, int userId) {
        Binder.withCleanCallingIdentity(() ->
        Binder.withCleanCallingIdentity(() -> {
            LocalServices.getService(PackageManagerInternal.class)
            LocalServices.getService(PackageManagerInternal.class)
                    .setOwnerProtectedPackages(
                    .setOwnerProtectedPackages(
                            userId,
                            userId,
                                packages == null ? null : packages.stream().toList()));
                            packages == null ? null : packages.stream().toList());
            LocalServices.getService(UsageStatsManagerInternal.class)
                            .setAdminProtectedPackages(
                            packages == null ? null : new ArraySet(packages), userId);
        });
        return true;
        return true;
    }
    }