Stop using IIpConnectivityMetrics in ConnectivityService.

Currently, ConnectivityService calls the IpConnectivityMetrics
service class directly to log default network events. This is
incompatible with ConnectivityService being in a mainline module.
Replace direct access to IIpConnectivityMetrics with public
methods in IpConnectivityLog, which is @SystemApi class.

The new methods are not yet @SystemApi, but they can be made so
if desired. Alternatively, these metrics could be deleted.

Also remove the IpConectivityMetrics service from the
service-connectivity JAR, and go back to starting it from
SystemServer.java, which is what was happening a few hours ago
before aosp/1542626 was merged.

Test: builds, boots
Test: atest FrameworksNetTests
Test: "dumpsys connmetrics" shows events, including default network events
Change-Id: I9d6147d93590363a2f8f83f39f05c03d001b4851
This commit is contained in:
Lorenzo Colitti
2021-01-07 19:28:32 +09:00
parent 2982364969
commit 682686bdff
9 changed files with 157 additions and 51 deletions

View File

@@ -1222,8 +1222,7 @@ public final class SystemServer {
}
t.traceBegin("IpConnectivityMetrics");
mSystemServiceManager.startServiceFromJar(IP_CONNECTIVITY_METRICS_CLASS,
CONNECTIVITY_SERVICE_APEX_PATH);
mSystemServiceManager.startService(IP_CONNECTIVITY_METRICS_CLASS);
t.traceEnd();
t.traceBegin("NetworkWatchlistService");