Use merged NetworkTemplate to query data usage
This CL uses merged NetworkTemplate so that it shows correct data for carrier which is a virtual that has multiple subscriberId under the hood. By doing this, this CL also adds several hidden API so settings can query by NetworkTemplate directly. Fixes: 120566366 Test: RunSettingsLibRoboTests Change-Id: I8b747697933c75b48b14387adafb5ac9ca165926
This commit is contained in:
@@ -278,6 +278,12 @@ public class NetworkStatsManager {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return querySummary(template, startTime, endTime);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** @hide */
|
||||||
|
public NetworkStats querySummary(NetworkTemplate template, long startTime,
|
||||||
|
long endTime) throws SecurityException, RemoteException {
|
||||||
NetworkStats result;
|
NetworkStats result;
|
||||||
result = new NetworkStats(mContext, template, mFlags, startTime, endTime, mService);
|
result = new NetworkStats(mContext, template, mFlags, startTime, endTime, mService);
|
||||||
result.startSummaryEnumeration();
|
result.startSummaryEnumeration();
|
||||||
@@ -296,6 +302,13 @@ public class NetworkStatsManager {
|
|||||||
NetworkStats.Bucket.TAG_NONE, NetworkStats.Bucket.STATE_ALL);
|
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.
|
* Query network usage statistics details for a given uid and tag.
|
||||||
*
|
*
|
||||||
@@ -340,6 +353,13 @@ public class NetworkStatsManager {
|
|||||||
NetworkTemplate template;
|
NetworkTemplate template;
|
||||||
template = createTemplate(networkType, subscriberId);
|
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;
|
NetworkStats result;
|
||||||
try {
|
try {
|
||||||
result = new NetworkStats(mContext, template, mFlags, startTime, endTime, mService);
|
result = new NetworkStats(mContext, template, mFlags, startTime, endTime, mService);
|
||||||
|
|||||||
Reference in New Issue
Block a user