summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Chiachang Wang <chiachangwang@google.com> 2021-02-25 16:58:40 +0800
committer Chiachang Wang <chiachangwang@google.com> 2021-03-04 08:08:48 +0000
commitf1f57cc9c5ad39f0faee37449e723f688a18fb29 (patch)
tree52fc9f6a2f0e18ffcb73289e2386b0f97f3aefb8
parentbff3cb288cfa25a8946ea5b317ad3a3842d10f2b (diff)
Have the DataConnectionStat started from BSS
ConnectivityService is going to becoming a mainline module. The DataConnectionStat is used to listen the telephony status change and report to BSS. This does not really relate to connectivity. DataConnectionStat was created in ConnectivityService and use some hidden APIs which is not allowed for a mainline module. Thus, move the creation and monitor to BSS directly which is more appropriate place from its functional perspective. Also, move the DataConnectionStat out from module scope since it does have too much relationship with connectivity module. Bug: 171183530 Test: m ; verify the behavior with cellular state change Change-Id: I0c2c1b90df7a107ee75e81fd49d39d65678204c0 Merged-In: I0c2c1b90df7a107ee75e81fd49d39d65678204c0 (cherry picked from commit 39c303a839e37e143a2e9145e81fe506a6c3a920)
-rw-r--r--services/core/Android.bp1
-rw-r--r--services/core/java/com/android/server/ConnectivityService.java4
-rw-r--r--services/core/java/com/android/server/am/BatteryStatsService.java4
3 files changed, 4 insertions, 5 deletions
diff --git a/services/core/Android.bp b/services/core/Android.bp
index 99ce2db006ce..8ccfad6fe061 100644
--- a/services/core/Android.bp
+++ b/services/core/Android.bp
@@ -223,7 +223,6 @@ filegroup {
"java/com/android/server/TestNetworkService.java",
"java/com/android/server/connectivity/AutodestructReference.java",
"java/com/android/server/connectivity/ConnectivityConstants.java",
- "java/com/android/server/connectivity/DataConnectionStats.java",
"java/com/android/server/connectivity/DnsManager.java",
"java/com/android/server/connectivity/KeepaliveTracker.java",
"java/com/android/server/connectivity/LingerMonitor.java",
diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java
index e05a202ae657..7f850838f490 100644
--- a/services/core/java/com/android/server/ConnectivityService.java
+++ b/services/core/java/com/android/server/ConnectivityService.java
@@ -203,7 +203,6 @@ import com.android.net.module.util.LinkPropertiesUtils.CompareResult;
import com.android.net.module.util.PermissionUtils;
import com.android.server.am.BatteryStatsService;
import com.android.server.connectivity.AutodestructReference;
-import com.android.server.connectivity.DataConnectionStats;
import com.android.server.connectivity.DnsManager;
import com.android.server.connectivity.DnsManager.PrivateDnsValidationUpdate;
import com.android.server.connectivity.KeepaliveTracker;
@@ -1213,9 +1212,6 @@ public class ConnectivityService extends IConnectivityManager.Stub
mSettingsObserver = new SettingsObserver(mContext, mHandler);
registerSettingsCallbacks();
- final DataConnectionStats dataConnectionStats = new DataConnectionStats(mContext, mHandler);
- dataConnectionStats.startMonitoring();
-
mKeepaliveTracker = new KeepaliveTracker(mContext, mHandler);
mNotifier = new NetworkNotificationManager(mContext, mTelephonyManager);
mQosCallbackTracker = new QosCallbackTracker(mHandler, mNetworkRequestCounter);
diff --git a/services/core/java/com/android/server/am/BatteryStatsService.java b/services/core/java/com/android/server/am/BatteryStatsService.java
index 82f72e8cc1ac..ce2852ce7727 100644
--- a/services/core/java/com/android/server/am/BatteryStatsService.java
+++ b/services/core/java/com/android/server/am/BatteryStatsService.java
@@ -85,6 +85,7 @@ import com.android.internal.util.function.pooled.PooledLambda;
import com.android.net.module.util.NetworkCapabilitiesUtils;
import com.android.server.LocalServices;
import com.android.server.Watchdog;
+import com.android.server.connectivity.DataConnectionStats;
import com.android.server.net.BaseNetworkObserver;
import com.android.server.pm.UserManagerInternal;
@@ -371,6 +372,9 @@ public final class BatteryStatsService extends IBatteryStats.Stub
}
Watchdog.getInstance().addMonitor(this);
+
+ final DataConnectionStats dataConnectionStats = new DataConnectionStats(mContext, mHandler);
+ dataConnectionStats.startMonitoring();
}
private final class LocalService extends BatteryStatsInternal {