summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/current.txt8
-rw-r--r--api/system-current.txt8
-rw-r--r--api/test-current.txt8
-rw-r--r--core/java/android/app/usage/NetworkStats.java65
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;