diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index c370a00586feb..b74a582db2de4 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -2353,8 +2353,12 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager { final String value = Boolean.toString(hasDeviceOwner); mInjector.systemPropertiesSet(PROPERTY_DEVICE_OWNER_PRESENT, value); Slog.i(LOG_TAG, "Set ro.device_owner property to " + value); + } + } - if (hasDeviceOwner && mInjector.securityLogGetLoggingEnabledProperty()) { + private void maybeStartSecurityLogMonitorOnActivityManagerReady() { + synchronized (getLockObject()) { + if (mInjector.securityLogIsLoggingEnabled()) { mSecurityLogMonitor.start(); mInjector.runCryptoSelfTest(); maybePauseDeviceWideLoggingLocked(); @@ -3353,6 +3357,9 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager { loadAdminDataAsync(); mOwners.systemReady(); break; + case SystemService.PHASE_ACTIVITY_MANAGER_READY: + maybeStartSecurityLogMonitorOnActivityManagerReady(); + break; case SystemService.PHASE_BOOT_COMPLETED: ensureDeviceOwnerUserStarted(); // TODO Consider better place to do this. break;