Migrate bandwidth control to NMS, omit history.
Both stats and policy make NMS calls that depend on bandwidth control being enabled, so move enable/disable into NMS and drop calls when disabled. This avoids throwing heavy ISE exceptions when disabled. Only include recent data when writing NetworkStatsHistory as part of dumpsys call. Introduce manual poll event for Settings UI. Bug: 4982115, 4770435, 4515856 Change-Id: I257820b057af2f0f99c736fb4f61e55b9fdc3e66
This commit is contained in:
@@ -33,4 +33,7 @@ interface INetworkStatsService {
|
||||
/** Return usage summary per UID for traffic that matches template. */
|
||||
NetworkStats getSummaryForAllUid(in NetworkTemplate template, long start, long end, boolean includeTags);
|
||||
|
||||
/** Force update of statistics. */
|
||||
void forceUpdate();
|
||||
|
||||
}
|
||||
|
||||
@@ -279,10 +279,17 @@ public class NetworkStatsHistory implements Parcelable {
|
||||
return (long) (start + (r.nextFloat() * (end - start)));
|
||||
}
|
||||
|
||||
public void dump(String prefix, PrintWriter pw) {
|
||||
public void dump(String prefix, PrintWriter pw, boolean fullHistory) {
|
||||
pw.print(prefix);
|
||||
pw.print("NetworkStatsHistory: bucketDuration="); pw.println(bucketDuration);
|
||||
for (int i = 0; i < bucketCount; i++) {
|
||||
|
||||
final int start = fullHistory ? 0 : Math.max(0, bucketCount - 32);
|
||||
if (start > 0) {
|
||||
pw.print(prefix);
|
||||
pw.print(" (omitting "); pw.print(start); pw.println(" buckets)");
|
||||
}
|
||||
|
||||
for (int i = start; i < bucketCount; i++) {
|
||||
pw.print(prefix);
|
||||
pw.print(" bucketStart="); pw.print(bucketStart[i]);
|
||||
pw.print(" rx="); pw.print(rx[i]);
|
||||
@@ -293,7 +300,7 @@ public class NetworkStatsHistory implements Parcelable {
|
||||
@Override
|
||||
public String toString() {
|
||||
final CharArrayWriter writer = new CharArrayWriter();
|
||||
dump("", new PrintWriter(writer));
|
||||
dump("", new PrintWriter(writer), false);
|
||||
return writer.toString();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user