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

Commit 0a3c1e17 authored by Yuhan Zhao's avatar Yuhan Zhao Committed by Automerger Merge Worker
Browse files

Merge "Fixing the bug where secondary lockscreen intent is sent to the admin...

Merge "Fixing the bug where secondary lockscreen intent is sent to the admin receiver but no the service." into rvc-dev am: 6dc855e1 am: d547a99d

Change-Id: Id18b848466a7340174d3709a70edf47b9f2effff
parents ac1e71ee d547a99d
Loading
Loading
Loading
Loading
+14 −11
Original line number Diff line number Diff line
@@ -966,18 +966,21 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
        boolean changed = false;

        if (enabled && (oldIntent == null)) {
            Intent intent = new Intent(
                    DevicePolicyManager.ACTION_BIND_SECONDARY_LOCKSCREEN_SERVICE);
            ComponentName profileOwnerComponent =
                    mDevicePolicyManager.getProfileOwnerAsUser(userId);
            intent.setComponent(profileOwnerComponent);
            ComponentName poComponent = mDevicePolicyManager.getProfileOwnerAsUser(userId);
            if (poComponent == null) {
                Log.e(TAG, "No profile owner found for User " + userId);
            } else {
                Intent intent =
                        new Intent(DevicePolicyManager.ACTION_BIND_SECONDARY_LOCKSCREEN_SERVICE)
                                .setPackage(poComponent.getPackageName());
                ResolveInfo resolveInfo = mContext.getPackageManager().resolveService(intent, 0);
            if (resolveInfo != null) {
                Intent newIntent = new Intent();
                newIntent.setComponent(profileOwnerComponent);
                mSecondaryLockscreenRequirement.put(userId, newIntent);
                if (resolveInfo != null && resolveInfo.serviceInfo != null) {
                    Intent launchIntent =
                            new Intent().setComponent(resolveInfo.serviceInfo.getComponentName());
                    mSecondaryLockscreenRequirement.put(userId, launchIntent);
                    changed = true;
                }
            }
        } else if (!enabled && (oldIntent != null)) {
            mSecondaryLockscreenRequirement.put(userId, null);
            changed = true;