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

Commit 570755ea authored by Philip P. Moltmann's avatar Philip P. Moltmann
Browse files

[DO NOT MERGE] Move updateUserSenstive trigger to onGrantDefaultRoles

We need to recalculate the user sensitivity every time a package is
installed or changes.

The logic to recalculate was moved to only during boot. Move it back to
where it was before, but leave it async.

Test: forcefully installed GooglePermissionsController to override
      out-of-date mainline module.
      Then verified that with code before this change user-sensitive
      was not updated for newly installed apps. With this change
      user-sensitive is updated
Bug: 141311767

Change-Id: I6c100764850870e2e5d1ffe5fcd20b5cf2f94ed1
parent 36f401de
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -34,7 +34,6 @@ import android.content.Context;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.os.AsyncTask;
import android.os.Process;
import android.os.UserHandle;
import android.permission.PermissionControllerService;
import android.permission.PermissionManager;
@@ -570,9 +569,6 @@ public final class PermissionControllerServiceImpl extends PermissionControllerS
        AsyncTask.execute(() -> {
            onGrantOrUpgradeDefaultRuntimePermissions();
            callback.run();

            // Async part
            Utils.updateUserSensitive(getApplication(), Process.myUserHandle());
        });
    }

+5 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package com.android.packageinstaller.role.service;
import android.app.role.RoleControllerService;
import android.app.role.RoleManager;
import android.content.pm.ApplicationInfo;
import android.os.AsyncTask;
import android.os.Process;
import android.os.UserHandle;
import android.util.ArrayMap;
@@ -29,6 +30,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.WorkerThread;

import com.android.packageinstaller.permission.utils.CollectionUtils;
import com.android.packageinstaller.permission.utils.Utils;
import com.android.packageinstaller.role.model.Role;
import com.android.packageinstaller.role.model.Roles;
import com.android.packageinstaller.role.utils.PackageUtils;
@@ -168,6 +170,9 @@ public class RoleControllerServiceImpl extends RoleControllerService {
            }
        }

        AsyncTask.execute(
                () -> Utils.updateUserSensitive(getApplication(), Process.myUserHandle()));

        return true;
    }