diff options
| -rw-r--r-- | api/current.txt | 8 | ||||
| -rw-r--r-- | api/system-current.txt | 8 | ||||
| -rw-r--r-- | api/test-current.txt | 8 | ||||
| -rw-r--r-- | core/java/android/app/usage/NetworkStats.java | 65 |
4 files changed, 87 insertions, 2 deletions
diff --git a/api/current.txt b/api/current.txt index 78de86028377..0b3c33bb53d2 100644 --- a/api/current.txt +++ b/api/current.txt @@ -6215,6 +6215,8 @@ package android.app.usage { public static class NetworkStats.Bucket { ctor public NetworkStats.Bucket(); method public long getEndTimeStamp(); + method public int getMetering(); + method public int getRoaming(); method public long getRxBytes(); method public long getRxPackets(); method public long getStartTimeStamp(); @@ -6222,6 +6224,12 @@ package android.app.usage { method public long getTxBytes(); method public long getTxPackets(); method public int getUid(); + field public static final int METERING_ALL = -1; // 0xffffffff + field public static final int METERING_DEFAULT = 1; // 0x1 + field public static final int METERING_METERED = 2; // 0x2 + field public static final int ROAMING_ALL = -1; // 0xffffffff + field public static final int ROAMING_DEFAULT = 1; // 0x1 + field public static final int ROAMING_ROAMING = 2; // 0x2 field public static final int STATE_ALL = -1; // 0xffffffff field public static final int STATE_DEFAULT = 1; // 0x1 field public static final int STATE_FOREGROUND = 2; // 0x2 diff --git a/api/system-current.txt b/api/system-current.txt index 24d257d49514..2e6fc8207049 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -6429,6 +6429,8 @@ package android.app.usage { public static class NetworkStats.Bucket { ctor public NetworkStats.Bucket(); method public long getEndTimeStamp(); + method public int getMetering(); + method public int getRoaming(); method public long getRxBytes(); method public long getRxPackets(); method public long getStartTimeStamp(); @@ -6436,6 +6438,12 @@ package android.app.usage { method public long getTxBytes(); method public long getTxPackets(); method public int getUid(); + field public static final int METERING_ALL = -1; // 0xffffffff + field public static final int METERING_DEFAULT = 1; // 0x1 + field public static final int METERING_METERED = 2; // 0x2 + field public static final int ROAMING_ALL = -1; // 0xffffffff + field public static final int ROAMING_DEFAULT = 1; // 0x1 + field public static final int ROAMING_ROAMING = 2; // 0x2 field public static final int STATE_ALL = -1; // 0xffffffff field public static final int STATE_DEFAULT = 1; // 0x1 field public static final int STATE_FOREGROUND = 2; // 0x2 diff --git a/api/test-current.txt b/api/test-current.txt index 6b6bafb9454e..c093531f1354 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -6215,6 +6215,8 @@ package android.app.usage { public static class NetworkStats.Bucket { ctor public NetworkStats.Bucket(); method public long getEndTimeStamp(); + method public int getMetering(); + method public int getRoaming(); method public long getRxBytes(); method public long getRxPackets(); method public long getStartTimeStamp(); @@ -6222,6 +6224,12 @@ package android.app.usage { method public long getTxBytes(); method public long getTxPackets(); method public int getUid(); + field public static final int METERING_ALL = -1; // 0xffffffff + field public static final int METERING_DEFAULT = 1; // 0x1 + field public static final int METERING_METERED = 2; // 0x2 + field public static final int ROAMING_ALL = -1; // 0xffffffff + field public static final int ROAMING_DEFAULT = 1; // 0x1 + field public static final int ROAMING_ROAMING = 2; // 0x2 field public static final int STATE_ALL = -1; // 0xffffffff field public static final int STATE_DEFAULT = 1; // 0x1 field public static final int STATE_FOREGROUND = 2; // 0x2 diff --git a/core/java/android/app/usage/NetworkStats.java b/core/java/android/app/usage/NetworkStats.java index ef08eb9e8987..5f97c9e1d4fd 100644 --- a/core/java/android/app/usage/NetworkStats.java +++ b/core/java/android/app/usage/NetworkStats.java @@ -121,12 +121,12 @@ public final class NetworkStats implements AutoCloseable { */ public static class Bucket { /** - * Combined usage across all other states. + * Combined usage across all states. */ public static final int STATE_ALL = -1; /** - * Usage not accounted in any other states. + * Usage not accounted for in any other state. */ public static final int STATE_DEFAULT = 0x1; @@ -150,8 +150,40 @@ public final class NetworkStats implements AutoCloseable { */ public static final int UID_TETHERING = TrafficStats.UID_TETHERING; + /** + * Combined usage across all metering states. + */ + public static final int METERING_ALL = -1; + + /** + * Usage not accounted for in any other metering state. + */ + public static final int METERING_DEFAULT = 0x1; + + /** + * Metered usage. + */ + public static final int METERING_METERED = 0x2; + + /** + * Combined usage across all roaming states. + */ + public static final int ROAMING_ALL = -1; + + /** + * Usage not accounted for in any other roaming state. + */ + public static final int ROAMING_DEFAULT = 0x1; + + /** + * Roaming usage. + */ + public static final int ROAMING_ROAMING = 0x2; + private int mUid; private int mState; + private int mMetering; + private int mRoaming; private long mBeginTimeStamp; private long mEndTimeStamp; private long mRxBytes; @@ -206,6 +238,30 @@ public final class NetworkStats implements AutoCloseable { } /** + * Metering state. One of the following values:<p/> + * <ul> + * <li>{@link #METERING_ALL}</li> + * <li>{@link #METERING_DEFAULT}</li> + * <li>{@link #METERING_METERED}</li> + * </ul> + */ + public int getMetering() { + return mMetering; + } + + /** + * Roaming state. One of the following values:<p/> + * <ul> + * <li>{@link #ROAMING_ALL}</li> + * <li>{@link #ROAMING_DEFAULT}</li> + * <li>{@link #ROAMING_ROAMING}</li> + * </ul> + */ + public int getRoaming() { + return mRoaming; + } + + /** * Start timestamp of the bucket's time interval. Defined in terms of "Unix time", see * {@link java.lang.System#currentTimeMillis}. * @return Start of interval. @@ -398,6 +454,9 @@ public final class NetworkStats implements AutoCloseable { private void fillBucketFromSummaryEntry(Bucket bucketOut) { bucketOut.mUid = Bucket.convertUid(mRecycledSummaryEntry.uid); bucketOut.mState = Bucket.convertState(mRecycledSummaryEntry.set); + // TODO: Implement metering/roaming tracking. + bucketOut.mMetering = Bucket.METERING_ALL; + bucketOut.mRoaming = Bucket.ROAMING_ALL; bucketOut.mBeginTimeStamp = mStartTimeStamp; bucketOut.mEndTimeStamp = mEndTimeStamp; bucketOut.mRxBytes = mRecycledSummaryEntry.rxBytes; @@ -444,6 +503,8 @@ public final class NetworkStats implements AutoCloseable { mRecycledHistoryEntry); bucketOut.mUid = Bucket.convertUid(getUid()); bucketOut.mState = Bucket.STATE_ALL; + bucketOut.mMetering = Bucket.METERING_ALL; + bucketOut.mRoaming = Bucket.ROAMING_ALL; bucketOut.mBeginTimeStamp = mRecycledHistoryEntry.bucketStart; bucketOut.mEndTimeStamp = mRecycledHistoryEntry.bucketStart + mRecycledHistoryEntry.bucketDuration; |