Register an OnPropertiesChangedListener in onBootCompleted (2/n)

Bug: 147712943
Test: atest StagedRollbackTest RollbackTest
Change-Id: I329b1f1a503fd9f824cbe322f07ab653a99e5676
This commit is contained in:
JW Wang
2020-01-15 15:44:25 +08:00
parent 3a85019ce4
commit c63c1dae52

View File

@@ -43,6 +43,7 @@ import android.content.rollback.RollbackManager;
import android.os.Binder;
import android.os.Environment;
import android.os.Handler;
import android.os.HandlerExecutor;
import android.os.HandlerThread;
import android.os.Process;
import android.os.SystemClock;
@@ -78,6 +79,7 @@ import java.util.List;
import java.util.Random;
import java.util.Set;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.Executor;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.TimeUnit;
@@ -134,6 +136,7 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub {
private final Context mContext;
private final HandlerThread mHandlerThread;
private final Executor mExecutor;
private final Installer mInstaller;
private final RollbackPackageHealthObserver mPackageHealthObserver;
private final AppDataRollbackHelper mAppDataRollbackHelper;
@@ -173,6 +176,7 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub {
mHandlerThread = new HandlerThread("RollbackManagerServiceHandler");
mHandlerThread.start();
Watchdog.getInstance().addThread(getHandler(), HANDLER_THREAD_TIMEOUT_DURATION_MILLIS);
mExecutor = new HandlerExecutor(getHandler());
for (UserInfo userInfo : UserManager.get(mContext).getUsers(true)) {
registerUserCallbacks(userInfo.getUserHandle());
@@ -511,6 +515,9 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub {
@AnyThread
void onBootCompleted() {
DeviceConfig.addOnPropertiesChangedListener(DeviceConfig.NAMESPACE_ROLLBACK_BOOT,
mExecutor, properties -> updateRollbackLifetimeDurationInMillis());
getHandler().post(() -> {
updateRollbackLifetimeDurationInMillis();
runExpiration();