Loading core/java/android/app/usage/NetworkStatsManager.java +20 −0 Original line number Diff line number Diff line Loading @@ -278,6 +278,12 @@ public class NetworkStatsManager { return null; } return querySummary(template, startTime, endTime); } /** @hide */ public NetworkStats querySummary(NetworkTemplate template, long startTime, long endTime) throws SecurityException, RemoteException { NetworkStats result; result = new NetworkStats(mContext, template, mFlags, startTime, endTime, mService); result.startSummaryEnumeration(); Loading @@ -296,6 +302,13 @@ public class NetworkStatsManager { NetworkStats.Bucket.TAG_NONE, NetworkStats.Bucket.STATE_ALL); } /** @hide */ public NetworkStats queryDetailsForUid(NetworkTemplate template, long startTime, long endTime, int uid) throws SecurityException { return queryDetailsForUidTagState(template, startTime, endTime, uid, NetworkStats.Bucket.TAG_NONE, NetworkStats.Bucket.STATE_ALL); } /** * Query network usage statistics details for a given uid and tag. * Loading Loading @@ -340,6 +353,13 @@ public class NetworkStatsManager { NetworkTemplate template; template = createTemplate(networkType, subscriberId); return queryDetailsForUidTagState(template, startTime, endTime, uid, tag, state); } /** @hide */ public NetworkStats queryDetailsForUidTagState(NetworkTemplate template, long startTime, long endTime, int uid, int tag, int state) throws SecurityException { NetworkStats result; try { result = new NetworkStats(mContext, template, mFlags, startTime, endTime, mService); Loading packages/SettingsLib/src/com/android/settingslib/net/DataUsageController.java +1 −3 Original line number Diff line number Diff line Loading @@ -175,9 +175,7 @@ public class DataUsageController { private long getUsageLevel(NetworkTemplate template, long start, long end) { try { final Bucket bucket = mNetworkStatsManager.querySummaryForDevice( getNetworkType(template), getActiveSubscriberId(), start, end); final Bucket bucket = mNetworkStatsManager.querySummaryForDevice(template, start, end); if (bucket != null) { return bucket.getRxBytes() + bucket.getTxBytes(); } Loading packages/SettingsLib/src/com/android/settingslib/net/NetworkCycleChartDataLoader.java +3 −3 Original line number Diff line number Diff line Loading @@ -37,14 +37,14 @@ public class NetworkCycleChartDataLoader private NetworkCycleChartDataLoader(Builder builder) { super(builder); mData = new ArrayList<NetworkCycleChartData>(); mData = new ArrayList<>(); } @Override void recordUsage(long start, long end) { try { final NetworkStats.Bucket bucket = mNetworkStatsManager.querySummaryForDevice( mNetworkType, mSubId, start, end); mNetworkTemplate, start, end); final long total = bucket == null ? 0L : bucket.getRxBytes() + bucket.getTxBytes(); if (total > 0L) { final NetworkCycleChartData.Builder builder = new NetworkCycleChartData.Builder(); Loading Loading @@ -81,7 +81,7 @@ public class NetworkCycleChartDataLoader long usage = 0L; try { final NetworkStats.Bucket bucket = mNetworkStatsManager.querySummaryForDevice( mNetworkType, mSubId, bucketStart, bucketEnd); mNetworkTemplate, bucketStart, bucketEnd); if (bucket != null) { usage = bucket.getRxBytes() + bucket.getTxBytes(); } Loading packages/SettingsLib/src/com/android/settingslib/net/NetworkCycleDataForUidLoader.java +5 −5 Original line number Diff line number Diff line Loading @@ -23,11 +23,11 @@ import android.app.usage.NetworkStats; import android.content.Context; import android.util.Log; import androidx.annotation.VisibleForTesting; import java.util.ArrayList; import java.util.List; import androidx.annotation.VisibleForTesting; /** * Loader for network data usage history. It returns a list of usage data per billing cycle for the * specific Uid(s). Loading @@ -44,7 +44,7 @@ public class NetworkCycleDataForUidLoader extends super(builder); mUids = builder.mUids; mRetrieveDetail = builder.mRetrieveDetail; mData = new ArrayList<NetworkCycleDataForUid>(); mData = new ArrayList<>(); } @Override Loading @@ -54,7 +54,7 @@ public class NetworkCycleDataForUidLoader extends long totalForeground = 0L; for (int uid : mUids) { final NetworkStats stats = mNetworkStatsManager.queryDetailsForUid( mNetworkType, mSubId, start, end, uid); mNetworkTemplate, start, end, uid); final long usage = getTotalUsage(stats); if (usage > 0L) { totalUsage += usage; Loading Loading @@ -100,7 +100,7 @@ public class NetworkCycleDataForUidLoader extends private long getForegroundUsage(long start, long end, int uid) { final NetworkStats stats = mNetworkStatsManager.queryDetailsForUidTagState( mNetworkType, mSubId, start, end, uid, TAG_NONE, STATE_FOREGROUND); mNetworkTemplate, start, end, uid, TAG_NONE, STATE_FOREGROUND); return getTotalUsage(stats); } Loading packages/SettingsLib/src/com/android/settingslib/net/NetworkCycleDataLoader.java +1 −13 Original line number Diff line number Diff line Loading @@ -49,18 +49,14 @@ import java.util.Iterator; public abstract class NetworkCycleDataLoader<D> extends AsyncTaskLoader<D> { private static final String TAG = "NetworkCycleDataLoader"; protected final NetworkStatsManager mNetworkStatsManager; protected final String mSubId; protected final int mNetworkType; protected final NetworkTemplate mNetworkTemplate; private final NetworkPolicy mPolicy; private final NetworkTemplate mNetworkTemplate; private final ArrayList<Long> mCycles; @VisibleForTesting final INetworkStatsService mNetworkStatsService; protected NetworkCycleDataLoader(Builder<?> builder) { super(builder.mContext); mSubId = builder.mSubId; mNetworkType = builder.mNetworkType; mNetworkTemplate = builder.mNetworkTemplate; mCycles = builder.mCycles; mNetworkStatsManager = (NetworkStatsManager) Loading Loading @@ -180,8 +176,6 @@ public abstract class NetworkCycleDataLoader<D> extends AsyncTaskLoader<D> { public static abstract class Builder<T extends NetworkCycleDataLoader> { private final Context mContext; private String mSubId; private int mNetworkType; private NetworkTemplate mNetworkTemplate; private ArrayList<Long> mCycles; Loading @@ -189,14 +183,8 @@ public abstract class NetworkCycleDataLoader<D> extends AsyncTaskLoader<D> { mContext = context; } public Builder<T> setSubscriberId(String subId) { mSubId = subId; return this; } public Builder<T> setNetworkTemplate(NetworkTemplate template) { mNetworkTemplate = template; mNetworkType = DataUsageController.getNetworkType(template); return this; } Loading Loading
core/java/android/app/usage/NetworkStatsManager.java +20 −0 Original line number Diff line number Diff line Loading @@ -278,6 +278,12 @@ public class NetworkStatsManager { return null; } return querySummary(template, startTime, endTime); } /** @hide */ public NetworkStats querySummary(NetworkTemplate template, long startTime, long endTime) throws SecurityException, RemoteException { NetworkStats result; result = new NetworkStats(mContext, template, mFlags, startTime, endTime, mService); result.startSummaryEnumeration(); Loading @@ -296,6 +302,13 @@ public class NetworkStatsManager { NetworkStats.Bucket.TAG_NONE, NetworkStats.Bucket.STATE_ALL); } /** @hide */ public NetworkStats queryDetailsForUid(NetworkTemplate template, long startTime, long endTime, int uid) throws SecurityException { return queryDetailsForUidTagState(template, startTime, endTime, uid, NetworkStats.Bucket.TAG_NONE, NetworkStats.Bucket.STATE_ALL); } /** * Query network usage statistics details for a given uid and tag. * Loading Loading @@ -340,6 +353,13 @@ public class NetworkStatsManager { NetworkTemplate template; template = createTemplate(networkType, subscriberId); return queryDetailsForUidTagState(template, startTime, endTime, uid, tag, state); } /** @hide */ public NetworkStats queryDetailsForUidTagState(NetworkTemplate template, long startTime, long endTime, int uid, int tag, int state) throws SecurityException { NetworkStats result; try { result = new NetworkStats(mContext, template, mFlags, startTime, endTime, mService); Loading
packages/SettingsLib/src/com/android/settingslib/net/DataUsageController.java +1 −3 Original line number Diff line number Diff line Loading @@ -175,9 +175,7 @@ public class DataUsageController { private long getUsageLevel(NetworkTemplate template, long start, long end) { try { final Bucket bucket = mNetworkStatsManager.querySummaryForDevice( getNetworkType(template), getActiveSubscriberId(), start, end); final Bucket bucket = mNetworkStatsManager.querySummaryForDevice(template, start, end); if (bucket != null) { return bucket.getRxBytes() + bucket.getTxBytes(); } Loading
packages/SettingsLib/src/com/android/settingslib/net/NetworkCycleChartDataLoader.java +3 −3 Original line number Diff line number Diff line Loading @@ -37,14 +37,14 @@ public class NetworkCycleChartDataLoader private NetworkCycleChartDataLoader(Builder builder) { super(builder); mData = new ArrayList<NetworkCycleChartData>(); mData = new ArrayList<>(); } @Override void recordUsage(long start, long end) { try { final NetworkStats.Bucket bucket = mNetworkStatsManager.querySummaryForDevice( mNetworkType, mSubId, start, end); mNetworkTemplate, start, end); final long total = bucket == null ? 0L : bucket.getRxBytes() + bucket.getTxBytes(); if (total > 0L) { final NetworkCycleChartData.Builder builder = new NetworkCycleChartData.Builder(); Loading Loading @@ -81,7 +81,7 @@ public class NetworkCycleChartDataLoader long usage = 0L; try { final NetworkStats.Bucket bucket = mNetworkStatsManager.querySummaryForDevice( mNetworkType, mSubId, bucketStart, bucketEnd); mNetworkTemplate, bucketStart, bucketEnd); if (bucket != null) { usage = bucket.getRxBytes() + bucket.getTxBytes(); } Loading
packages/SettingsLib/src/com/android/settingslib/net/NetworkCycleDataForUidLoader.java +5 −5 Original line number Diff line number Diff line Loading @@ -23,11 +23,11 @@ import android.app.usage.NetworkStats; import android.content.Context; import android.util.Log; import androidx.annotation.VisibleForTesting; import java.util.ArrayList; import java.util.List; import androidx.annotation.VisibleForTesting; /** * Loader for network data usage history. It returns a list of usage data per billing cycle for the * specific Uid(s). Loading @@ -44,7 +44,7 @@ public class NetworkCycleDataForUidLoader extends super(builder); mUids = builder.mUids; mRetrieveDetail = builder.mRetrieveDetail; mData = new ArrayList<NetworkCycleDataForUid>(); mData = new ArrayList<>(); } @Override Loading @@ -54,7 +54,7 @@ public class NetworkCycleDataForUidLoader extends long totalForeground = 0L; for (int uid : mUids) { final NetworkStats stats = mNetworkStatsManager.queryDetailsForUid( mNetworkType, mSubId, start, end, uid); mNetworkTemplate, start, end, uid); final long usage = getTotalUsage(stats); if (usage > 0L) { totalUsage += usage; Loading Loading @@ -100,7 +100,7 @@ public class NetworkCycleDataForUidLoader extends private long getForegroundUsage(long start, long end, int uid) { final NetworkStats stats = mNetworkStatsManager.queryDetailsForUidTagState( mNetworkType, mSubId, start, end, uid, TAG_NONE, STATE_FOREGROUND); mNetworkTemplate, start, end, uid, TAG_NONE, STATE_FOREGROUND); return getTotalUsage(stats); } Loading
packages/SettingsLib/src/com/android/settingslib/net/NetworkCycleDataLoader.java +1 −13 Original line number Diff line number Diff line Loading @@ -49,18 +49,14 @@ import java.util.Iterator; public abstract class NetworkCycleDataLoader<D> extends AsyncTaskLoader<D> { private static final String TAG = "NetworkCycleDataLoader"; protected final NetworkStatsManager mNetworkStatsManager; protected final String mSubId; protected final int mNetworkType; protected final NetworkTemplate mNetworkTemplate; private final NetworkPolicy mPolicy; private final NetworkTemplate mNetworkTemplate; private final ArrayList<Long> mCycles; @VisibleForTesting final INetworkStatsService mNetworkStatsService; protected NetworkCycleDataLoader(Builder<?> builder) { super(builder.mContext); mSubId = builder.mSubId; mNetworkType = builder.mNetworkType; mNetworkTemplate = builder.mNetworkTemplate; mCycles = builder.mCycles; mNetworkStatsManager = (NetworkStatsManager) Loading Loading @@ -180,8 +176,6 @@ public abstract class NetworkCycleDataLoader<D> extends AsyncTaskLoader<D> { public static abstract class Builder<T extends NetworkCycleDataLoader> { private final Context mContext; private String mSubId; private int mNetworkType; private NetworkTemplate mNetworkTemplate; private ArrayList<Long> mCycles; Loading @@ -189,14 +183,8 @@ public abstract class NetworkCycleDataLoader<D> extends AsyncTaskLoader<D> { mContext = context; } public Builder<T> setSubscriberId(String subId) { mSubId = subId; return this; } public Builder<T> setNetworkTemplate(NetworkTemplate template) { mNetworkTemplate = template; mNetworkType = DataUsageController.getNetworkType(template); return this; } Loading