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

Commit 990eeb96 authored by Junyu Lai's avatar Junyu Lai Committed by Automerger Merge Worker
Browse files

[MS62.1] Start NetworkStatsService from the module am: c3c27877

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1987466

Change-Id: I1f72e7f3fbcb64052e90a10bc2869076fc9ecea7
parents b08061d1 c3c27877
Loading
Loading
Loading
Loading
+0 −13
Original line number Original line Diff line number Diff line
@@ -44,7 +44,6 @@ import android.app.timezonedetector.TimeZoneDetectorImpl;
import android.app.trust.TrustManager;
import android.app.trust.TrustManager;
import android.app.usage.IStorageStatsManager;
import android.app.usage.IStorageStatsManager;
import android.app.usage.IUsageStatsManager;
import android.app.usage.IUsageStatsManager;
import android.app.usage.NetworkStatsManager;
import android.app.usage.StorageStatsManager;
import android.app.usage.StorageStatsManager;
import android.app.usage.UsageStatsManager;
import android.app.usage.UsageStatsManager;
import android.apphibernation.AppHibernationManager;
import android.apphibernation.AppHibernationManager;
@@ -129,7 +128,6 @@ import android.net.ConnectivityFrameworkInitializerTiramisu;
import android.net.EthernetManager;
import android.net.EthernetManager;
import android.net.IEthernetManager;
import android.net.IEthernetManager;
import android.net.INetworkPolicyManager;
import android.net.INetworkPolicyManager;
import android.net.INetworkStatsService;
import android.net.IPacProxyManager;
import android.net.IPacProxyManager;
import android.net.IVpnManager;
import android.net.IVpnManager;
import android.net.NetworkPolicyManager;
import android.net.NetworkPolicyManager;
@@ -967,17 +965,6 @@ public final class SystemServiceRegistry {
                return new UsageStatsManager(ctx.getOuterContext(), service);
                return new UsageStatsManager(ctx.getOuterContext(), service);
            }});
            }});


        registerService(Context.NETWORK_STATS_SERVICE, NetworkStatsManager.class,
                new CachedServiceFetcher<NetworkStatsManager>() {
            @Override
            public NetworkStatsManager createService(ContextImpl ctx) throws ServiceNotFoundException {
                // TODO: Replace with an initializer in the module, see
                //  {@code ConnectivityFrameworkInitializer}.
                final INetworkStatsService service = INetworkStatsService.Stub.asInterface(
                        ServiceManager.getServiceOrThrow(Context.NETWORK_STATS_SERVICE));
                return new NetworkStatsManager(ctx.getOuterContext(), service);
            }});

        registerService(Context.PERSISTENT_DATA_BLOCK_SERVICE, PersistentDataBlockManager.class,
        registerService(Context.PERSISTENT_DATA_BLOCK_SERVICE, PersistentDataBlockManager.class,
                new StaticServiceFetcher<PersistentDataBlockManager>() {
                new StaticServiceFetcher<PersistentDataBlockManager>() {
            @Override
            @Override
+11 −0
Original line number Original line Diff line number Diff line
@@ -18,6 +18,7 @@ package android.net;


import android.annotation.SystemApi;
import android.annotation.SystemApi;
import android.app.SystemServiceRegistry;
import android.app.SystemServiceRegistry;
import android.app.usage.NetworkStatsManager;
import android.content.Context;
import android.content.Context;
import android.net.nsd.INsdManager;
import android.net.nsd.INsdManager;
import android.net.nsd.NsdManager;
import android.net.nsd.NsdManager;
@@ -57,5 +58,15 @@ public final class ConnectivityFrameworkInitializerTiramisu {
                    return new IpSecManager(context, service);
                    return new IpSecManager(context, service);
                }
                }
        );
        );

        SystemServiceRegistry.registerContextAwareService(
                Context.NETWORK_STATS_SERVICE,
                NetworkStatsManager.class,
                (context, serviceBinder) -> {
                    INetworkStatsService service =
                            INetworkStatsService.Stub.asInterface(serviceBinder);
                    return new NetworkStatsManager(context, service);
                }
        );
    }
    }
}
}
+6 −20
Original line number Original line Diff line number Diff line
@@ -54,7 +54,6 @@ import android.hardware.display.DisplayManagerInternal;
import android.net.ConnectivityManager;
import android.net.ConnectivityManager;
import android.net.ConnectivityModuleConnector;
import android.net.ConnectivityModuleConnector;
import android.net.NetworkStackClient;
import android.net.NetworkStackClient;
import android.net.TrafficStats;
import android.os.BaseBundle;
import android.os.BaseBundle;
import android.os.Binder;
import android.os.Binder;
import android.os.Build;
import android.os.Build;
@@ -141,7 +140,6 @@ import com.android.server.media.MediaRouterService;
import com.android.server.media.metrics.MediaMetricsManagerService;
import com.android.server.media.metrics.MediaMetricsManagerService;
import com.android.server.media.projection.MediaProjectionManagerService;
import com.android.server.media.projection.MediaProjectionManagerService;
import com.android.server.net.NetworkPolicyManagerService;
import com.android.server.net.NetworkPolicyManagerService;
import com.android.server.net.NetworkStatsService;
import com.android.server.net.watchlist.NetworkWatchlistService;
import com.android.server.net.watchlist.NetworkWatchlistService;
import com.android.server.notification.NotificationManagerService;
import com.android.server.notification.NotificationManagerService;
import com.android.server.oemlock.OemLockService;
import com.android.server.oemlock.OemLockService;
@@ -379,6 +377,8 @@ public final class SystemServer implements Dumpable {
            "com.android.server.media.MediaResourceMonitorService";
            "com.android.server.media.MediaResourceMonitorService";
    private static final String CONNECTIVITY_SERVICE_INITIALIZER_CLASS =
    private static final String CONNECTIVITY_SERVICE_INITIALIZER_CLASS =
            "com.android.server.ConnectivityServiceInitializer";
            "com.android.server.ConnectivityServiceInitializer";
    private static final String NETWORK_STATS_SERVICE_INITIALIZER_CLASS =
            "com.android.server.NetworkStatsServiceInitializer";
    private static final String IP_CONNECTIVITY_METRICS_CLASS =
    private static final String IP_CONNECTIVITY_METRICS_CLASS =
            "com.android.server.connectivity.IpConnectivityMetrics";
            "com.android.server.connectivity.IpConnectivityMetrics";
    private static final String MEDIA_COMMUNICATION_SERVICE_CLASS =
    private static final String MEDIA_COMMUNICATION_SERVICE_CLASS =
@@ -1338,7 +1338,6 @@ public final class SystemServer implements Dumpable {
        NetworkManagementService networkManagement = null;
        NetworkManagementService networkManagement = null;
        VpnManagerService vpnManager = null;
        VpnManagerService vpnManager = null;
        VcnManagementService vcnManagement = null;
        VcnManagementService vcnManagement = null;
        NetworkStatsService networkStats = null;
        NetworkPolicyManagerService networkPolicy = null;
        NetworkPolicyManagerService networkPolicy = null;
        WindowManagerService wm = null;
        WindowManagerService wm = null;
        SerialService serial = null;
        SerialService serial = null;
@@ -1830,13 +1829,10 @@ public final class SystemServer implements Dumpable {
            t.traceEnd();
            t.traceEnd();


            t.traceBegin("StartNetworkStatsService");
            t.traceBegin("StartNetworkStatsService");
            try {
            // This has to be called before NetworkPolicyManager because NetworkPolicyManager
                networkStats = NetworkStatsService.create(context);
            // needs to take NetworkStatsService to initialize.
                ServiceManager.addService(Context.NETWORK_STATS_SERVICE, networkStats);
            mSystemServiceManager.startServiceFromJar(NETWORK_STATS_SERVICE_INITIALIZER_CLASS,
                TrafficStats.init(context);
                    CONNECTIVITY_SERVICE_APEX_PATH);
            } catch (Throwable e) {
                reportWtf("starting NetworkStats Service", e);
            }
            t.traceEnd();
            t.traceEnd();


            t.traceBegin("StartNetworkPolicyManagerService");
            t.traceBegin("StartNetworkPolicyManagerService");
@@ -2657,7 +2653,6 @@ public final class SystemServer implements Dumpable {


        // These are needed to propagate to the runnable below.
        // These are needed to propagate to the runnable below.
        final NetworkManagementService networkManagementF = networkManagement;
        final NetworkManagementService networkManagementF = networkManagement;
        final NetworkStatsService networkStatsF = networkStats;
        final NetworkPolicyManagerService networkPolicyF = networkPolicy;
        final NetworkPolicyManagerService networkPolicyF = networkPolicy;
        final CountryDetectorService countryDetectorF = countryDetector;
        final CountryDetectorService countryDetectorF = countryDetector;
        final NetworkTimeUpdateService networkTimeUpdaterF = networkTimeUpdater;
        final NetworkTimeUpdateService networkTimeUpdaterF = networkTimeUpdater;
@@ -2754,15 +2749,6 @@ public final class SystemServer implements Dumpable {
                        .networkScoreAndNetworkManagementServiceReady();
                        .networkScoreAndNetworkManagementServiceReady();
            }
            }
            t.traceEnd();
            t.traceEnd();
            t.traceBegin("MakeNetworkStatsServiceReady");
            try {
                if (networkStatsF != null) {
                    networkStatsF.systemReady();
                }
            } catch (Throwable e) {
                reportWtf("making Network Stats Service ready", e);
            }
            t.traceEnd();
            t.traceBegin("MakeConnectivityServiceReady");
            t.traceBegin("MakeConnectivityServiceReady");
            try {
            try {
                if (connectivityF != null) {
                if (connectivityF != null) {