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

Skip to content
Commit 898aefda authored by Hani Kazmi's avatar Hani Kazmi
Browse files

Add ECM appOp after UidState is created

This fixes a bug introduced in ag/22299389.

ECM is enabled for a package by an AppOp being added to it at install
time from InstallPackageHelper#updateSettingsInternalLI. This is
/before/ an AppOp tracker(AppOpsService.UidState) has been created for
the package.
That is created in InstallPackageHelper#handlePackagePostInstall which
will call through to AppOpsService#onPackageAdded.

updateSettingsInternalLI is called before handlePackagePostInstall.
In T and U, this worked fine. If setMode was called before UidState had
been created, it would automatically create it first here.

However, this code has now changed to no longer create the UidState.

This results in setMode silently failing and not setting the appOp to
ERRORED for ECM.

We also fix a different bug where installing the app with a new user on
a multi-user device would result in ECM being set back to errored for
all users.

Bug: 307324622
Test: Manually tested on device
Test: atest android.packageinstaller.install.cts
Change-Id: I68450e0d7ae06039fc7e41f6e9b2332f1491fb02
parent eaf0c9d6
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment