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

Commit 5c47ee6c authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "add IncrementalManagerService to system server"

parents 03c71310 43f18ea4
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -152,6 +152,8 @@ import android.os.Vibrator;
import android.os.health.SystemHealthManager;
import android.os.image.DynamicSystemManager;
import android.os.image.IDynamicSystemService;
import android.os.incremental.IIncrementalManagerNative;
import android.os.incremental.IncrementalManager;
import android.os.storage.StorageManager;
import android.permission.PermissionControllerManager;
import android.permission.PermissionManager;
@@ -1225,6 +1227,20 @@ public final class SystemServiceRegistry {
                                Context.DATA_LOADER_MANAGER_SERVICE);
                        return new DataLoaderManager(IDataLoaderManager.Stub.asInterface(b));
                    }});
        //TODO(b/136132412): refactor this: 1) merge IIncrementalManager.aidl and
        //IIncrementalManagerNative.aidl, 2) implement the binder interface in
        //IncrementalManagerService.java, 3) use JNI to call native functions
        registerService(Context.INCREMENTAL_SERVICE, IncrementalManager.class,
                new CachedServiceFetcher<IncrementalManager>() {
                    @Override
                    public IncrementalManager createService(ContextImpl ctx) {
                        IBinder b = ServiceManager.getService(Context.INCREMENTAL_SERVICE);
                        if (b == null) {
                            return null;
                        }
                        return new IncrementalManager(
                                IIncrementalManagerNative.Stub.asInterface(b));
                    }});
        //CHECKSTYLE:ON IndentationCheck

        sInitializing = true;
+13 −0
Original line number Diff line number Diff line
@@ -105,6 +105,7 @@ import com.android.server.emergency.EmergencyAffordanceService;
import com.android.server.gpu.GpuService;
import com.android.server.hdmi.HdmiControlService;
import com.android.server.incident.IncidentCompanionService;
import com.android.server.incremental.IncrementalManagerService;
import com.android.server.input.InputManagerService;
import com.android.server.inputmethod.InputMethodManagerService;
import com.android.server.inputmethod.InputMethodSystemProperty;
@@ -324,6 +325,7 @@ public final class SystemServer {
    private ContentResolver mContentResolver;
    private EntropyMixer mEntropyMixer;
    private DataLoaderManagerService mDataLoaderManagerService;
    private IncrementalManagerService mIncrementalManagerService;

    private boolean mOnlyCore;
    private boolean mFirstBoot;
@@ -706,6 +708,11 @@ public final class SystemServer {
                DataLoaderManagerService.class);
        t.traceEnd();

        // Incremental service needs to be started before package manager
        t.traceBegin("StartIncrementalManagerService");
        mIncrementalManagerService = IncrementalManagerService.start(mSystemContext);
        t.traceEnd();

        // Power manager needs to be started early because other services need it.
        // Native daemons may be watching for it to be registered so it must be ready
        // to handle incoming binder calls immediately (including being able to verify
@@ -2066,6 +2073,12 @@ public final class SystemServer {
        mPackageManagerService.systemReady();
        t.traceEnd();

        if (mIncrementalManagerService != null) {
            t.traceBegin("MakeIncrementalManagerServiceReady");
            mIncrementalManagerService.systemReady();
            t.traceEnd();
        }

        t.traceBegin("MakeDisplayManagerServiceReady");
        try {
            // TODO: use boot phase and communicate these flags some other way