diff options
| author | Junyu Lai <junyulai@google.com> | 2022-01-13 11:25:15 +0000 |
|---|---|---|
| committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2022-01-13 11:25:15 +0000 |
| commit | 0a0c20df114f988ea863c6109c9f41ebf9c4e1f4 (patch) | |
| tree | 7d416c78afb18f1724ee5f4f7253d618642cab27 /framework-t/src/android/app/usage/NetworkStatsManager.java | |
| parent | bd80c9db1779efad9fd9b4545c29b2f1b119d2cb (diff) | |
| parent | 7577deee2135bcafe317e1fc8f319e0eaef5be0a (diff) | |
Merge "[MS44.1] Add API to query tagged UID summary"
Diffstat (limited to 'framework-t/src/android/app/usage/NetworkStatsManager.java')
| -rw-r--r-- | framework-t/src/android/app/usage/NetworkStatsManager.java | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/framework-t/src/android/app/usage/NetworkStatsManager.java b/framework-t/src/android/app/usage/NetworkStatsManager.java index 583f7ba8cd..cc7b2a5a30 100644 --- a/framework-t/src/android/app/usage/NetworkStatsManager.java +++ b/framework-t/src/android/app/usage/NetworkStatsManager.java @@ -369,7 +369,7 @@ public class NetworkStatsManager { * @return Statistics which is described above. * @hide */ - @Nullable + @NonNull // @SystemApi(client = MODULE_LIBRARIES) @WorkerThread public NetworkStats querySummary(@NonNull NetworkTemplate template, long startTime, @@ -386,6 +386,39 @@ public class NetworkStatsManager { } /** + * Query tagged network usage statistics summaries. + * + * The results will only include tagged traffic made by UIDs belonging to the calling user + * profile. The results are aggregated over time, so that all buckets will have the same + * start and end timestamps as the passed arguments. Not aggregated over state, uid, + * default network, metered, or roaming. + * This may take a long time, and apps should avoid calling this on their main thread. + * + * @param template Template used to match networks. See {@link NetworkTemplate}. + * @param startTime Start of period, in milliseconds since the Unix epoch, see + * {@link System#currentTimeMillis}. + * @param endTime End of period, in milliseconds since the Unix epoch, see + * {@link System#currentTimeMillis}. + * @return Statistics which is described above. + * @hide + */ + @NonNull + // @SystemApi(client = MODULE_LIBRARIES) + @WorkerThread + public NetworkStats queryTaggedSummary(@NonNull NetworkTemplate template, long startTime, + long endTime) throws SecurityException { + try { + NetworkStats result = + new NetworkStats(mContext, template, mFlags, startTime, endTime, mService); + result.startTaggedSummaryEnumeration(); + return result; + } catch (RemoteException e) { + e.rethrowFromSystemServer(); + } + return null; // To make the compiler happy. + } + + /** * Query network usage statistics details for a given uid. * This may take a long time, and apps should avoid calling this on their main thread. * |
