From 675c43125f5ded14feaae07119cd5fc8532fa622 Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Tue, 13 Dec 2011 15:38:03 -0800 Subject: [PATCH] Avoid reading network stats when disabled. Bug: 5518868 Change-Id: Idb5c588b018bf735597ad7ff904ecc69224dd0a0 --- .../android/server/net/NetworkStatsService.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/services/java/com/android/server/net/NetworkStatsService.java b/services/java/com/android/server/net/NetworkStatsService.java index 871ed682e6..a3decd5f27 100644 --- a/services/java/com/android/server/net/NetworkStatsService.java +++ b/services/java/com/android/server/net/NetworkStatsService.java @@ -268,6 +268,11 @@ public class NetworkStatsService extends INetworkStatsService.Stub { } public void systemReady() { + if (!isBandwidthControlEnabled()) { + Slog.w(TAG, "bandwidth controls disabled, unable to track stats"); + return; + } + synchronized (mStatsLock) { // read historical network stats from disk, since policy service // might need them right away. we delay loading detailed UID stats @@ -1644,6 +1649,15 @@ public class NetworkStatsService extends INetworkStatsService.Stub { return telephony.getSubscriberId(); } + private boolean isBandwidthControlEnabled() { + try { + return mNetworkManager.isBandwidthControlEnabled(); + } catch (RemoteException e) { + // ignored; service lives in system_server + return false; + } + } + /** * Key uniquely identifying a {@link NetworkStatsHistory} for a UID. */