Migrate setPackagesSuspended
The underlying package suspension mechanism (PackageManager
.setPackagesSuspendedByAdmin) changes package suspension
state on a per-package basis so we can't simply "push" the
current list of suspended package to PackageManager from
PolicyEnforcerCallback. DPM.setPackagesSuspended() also
returns a list of failed packages which is complex to calculate
under coexistence. As a result, we simply use PolicyEngine
to store the package suspension state, and keep the enforcing
logic in DPMS.
Test: FrameworksServicesTests:SuspendPackagesTest
android.suspendapps.cts.SuspendPackagesTest
android.devicepolicy.cts.PackagesTest
android.devicepolicy.cts.PackageSuspensionTest
android.devicepolicy.cts.ApplicationExemptionsTest
MixedDeviceOwnerTest#testSuspendPackage
MixedManagedProfileOwnerTest#testSuspendPackage
MixedDeviceOwnerTest#testSuspendPackageWithPackageManager
MixedManagedProfileOwnerTest#testSuspendPackageWithPackageManager
Bug: 335624297
Change-Id: I9c287d39593d53d69e16ea2ec520df4d12ebcdaa
7 files changed