Most visited

Recently visited

Added in API level 8

TrafficStats

public class TrafficStats
extends Object

java.lang.Object
   ↳ android.net.TrafficStats


提供网络流量统计的类。 这些统计数据包括传输和接收的字节以及在所有接口上通过移动接口传输和接收的网络数据包,并且基于每个UID。

这些统计信息可能不适用于所有平台。 如果此设备不支持统计信息,则会返回UNSUPPORTED

请注意,此类重置的统计信息将在每次重新启动后从零开始。 要访问更健壮的历史网络统计数据, NetworkStatsManager改为使用NetworkStatsManager

Summary

Constants

int UNSUPPORTED

指示设备不支持统计信息的返回值。

Public constructors

TrafficStats()

Public methods

static void clearThreadStatsTag()

清除设置为账户 Socket当前线程的流量的任何活动标记。

static long getMobileRxBytes()

返回自设备引导以来移动网络上收到的字节数。

static long getMobileRxPackets()

从设备启动后返回移动网络接收的数据包数量。

static long getMobileTxBytes()

返回自设备启动后跨移动网络传输的字节数。

static long getMobileTxPackets()

返回设备启动后跨移动网络传输的数据包数量。

static int getThreadStatsTag()

当计算源自当前线程的流量 Socket时,获取使用的活动标记。

static long getTotalRxBytes()

返回设备启动后收到的字节数。

static long getTotalRxPackets()

返回设备启动后收到的数据包数量。

static long getTotalTxBytes()

返回设备启动后传输的字节数。

static long getTotalTxPackets()

返回设备启动后传输的数据包数量。

static long getUidRxBytes(int uid)

返回设备引导后给定UID收到的字节数。

static long getUidRxPackets(int uid)

返回设备启动后给定UID收到的数据包数量。

static long getUidTcpRxBytes(int uid)

此方法在API级别18中已弃用。从JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

static long getUidTcpRxSegments(int uid)

此方法在API级别18中已弃用。从JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

static long getUidTcpTxBytes(int uid)

此方法在API级别18中已弃用。从JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

static long getUidTcpTxSegments(int uid)

此方法在API级别18中已弃用。从JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

static long getUidTxBytes(int uid)

返回设备启动后给定UID传输的字节数。

static long getUidTxPackets(int uid)

返回设备启动后给定UID传输的数据包数量。

static long getUidUdpRxBytes(int uid)

此方法在API级别18中已弃用。从JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

static long getUidUdpRxPackets(int uid)

此方法在API级别18中已弃用。从JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

static long getUidUdpTxBytes(int uid)

此方法在API级别18中已弃用。从JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

static long getUidUdpTxPackets(int uid)

此方法在API级别18中已弃用。从JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

static void incrementOperationCount(int operationCount)

在调用线程上当前活动的计费标签下执行的网络操作的递增计数。

static void incrementOperationCount(int tag, int operationCount)

在给定的计费标签下执行网络操作的递增计数。

static void setThreadStatsTag(int tag)

当记帐源自当前线程的流量 Socket时,设置活动标记以使用。

static void tagDatagramSocket(DatagramSocket socket)

使用任何对当前线程有效的统计参数标记给定的 DatagramSocket

static void tagSocket(Socket socket)

用给当前线程激活的任何统计参数标记给定的 Socket

static void untagDatagramSocket(DatagramSocket socket)

从给定的 DatagramSocket删除任何统计参数。

static void untagSocket(Socket socket)

从给定的 Socket删除任何统计参数。

Inherited methods

From class java.lang.Object

Constants

UNSUPPORTED

Added in API level 8
int UNSUPPORTED

指示设备不支持统计信息的返回值。

常量值:-1(0xffffffff)

Public constructors

TrafficStats

Added in API level 8
TrafficStats ()

Public methods

clearThreadStatsTag

Added in API level 14
void clearThreadStatsTag ()

清除设置为账户 Socket来自当前线程的流量的任何活动标记。

也可以看看:

getMobileRxBytes

Added in API level 8
long getMobileRxBytes ()

返回自设备引导以来移动网络上收到的字节数。 对所有移动网络接口进行数据包计数,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

Returns
long

getMobileRxPackets

Added in API level 8
long getMobileRxPackets ()

从设备启动后返回移动网络接收的数据包数量。 对所有移动网络接口进行数据包计数,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

Returns
long

getMobileTxBytes

Added in API level 8
long getMobileTxBytes ()

返回自设备启动后跨移动网络传输的字节数。 对所有移动网络接口进行数据包计数,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

Returns
long

getMobileTxPackets

Added in API level 8
long getMobileTxPackets ()

返回设备启动后跨移动网络传输的数据包数量。 对所有移动网络接口进行数据包计数,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

Returns
long

getThreadStatsTag

Added in API level 14
int getThreadStatsTag ()

当记帐源自当前线程的流量Socket时,获取使用的活动标记。 每个线程仅支持一个活动标记。 tagSocket(Socket)

Returns
int

也可以看看:

getTotalRxBytes

Added in API level 8
long getTotalRxBytes ()

返回设备启动后收到的字节数。 统计所有网络接口的数据包数量,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

Returns
long

getTotalRxPackets

Added in API level 8
long getTotalRxPackets ()

返回设备启动后收到的数据包数量。 统计所有网络接口的数据包数量,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

Returns
long

getTotalTxBytes

Added in API level 8
long getTotalTxBytes ()

返回设备启动后传输的字节数。 统计所有网络接口的数据包数量,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

Returns
long

getTotalTxPackets

Added in API level 8
long getTotalTxPackets ()

返回设备启动后传输的数据包数量。 统计所有网络接口的数据包数量,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

Returns
long

getUidRxBytes

Added in API level 8
long getUidRxBytes (int uid)

返回设备引导后给定UID收到的字节数。 统计所有网络接口的数据包数量,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

N开始,这将仅报告呼叫UID的流量统计。 由于隐私原因,它将返回所有其他UID的UNSUPPORTED 要访问属于其他UID的历史网络统计信息,请使用NetworkStatsManager

Parameters
uid int
Returns
long

也可以看看:

getUidRxPackets

Added in API level 12
long getUidRxPackets (int uid)

返回设备启动后给定UID收到的数据包数量。 统计所有网络接口的数据包数量,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

N开始,这将仅报告呼叫UID的流量统计。 由于隐私原因,它将返回所有其他UID的UNSUPPORTED 要访问属于其他UID的历史网络统计信息,请使用NetworkStatsManager

Parameters
uid int
Returns
long

也可以看看:

getUidTcpRxBytes

Added in API level 12
long getUidTcpRxBytes (int uid)

此方法在API级别18中已被弃用。
JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

Parameters
uid int
Returns
long

也可以看看:

getUidTcpRxSegments

Added in API level 12
long getUidTcpRxSegments (int uid)

此方法在API级别18中已被弃用。
JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

Parameters
uid int
Returns
long

也可以看看:

getUidTcpTxBytes

Added in API level 12
long getUidTcpTxBytes (int uid)

此方法在API级别18中已被弃用。
JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

Parameters
uid int
Returns
long

也可以看看:

getUidTcpTxSegments

Added in API level 12
long getUidTcpTxSegments (int uid)

此方法在API级别18中已被弃用。
JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

Parameters
uid int
Returns
long

也可以看看:

getUidTxBytes

Added in API level 8
long getUidTxBytes (int uid)

返回设备启动后给定UID传输的字节数。 统计所有网络接口的数据包数量,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

N开始,这将仅报告调用UID的流量统计。 由于隐私原因,它将返回所有其他UID的UNSUPPORTED 要访问属于其他UID的历史网络统计信息,请使用NetworkStatsManager

Parameters
uid int
Returns
long

也可以看看:

getUidTxPackets

Added in API level 12
long getUidTxPackets (int uid)

返回设备启动后给定UID传输的数据包数量。 统计所有网络接口的数据包数量,并且自设备引导以来始终单调递增。 统计数据是在网络层进行测量的,因此它们包括TCP和UDP的使用。

JELLY_BEAN_MR2之前,这可能会在统计信息不可用的设备上返回 UNSUPPORTED

N开始,这将仅报告呼叫UID的流量统计。 由于隐私原因,它将返回所有其他UID的UNSUPPORTED 要访问属于其他UID的历史网络统计信息,请使用NetworkStatsManager

Parameters
uid int
Returns
long

也可以看看:

getUidUdpRxBytes

Added in API level 12
long getUidUdpRxBytes (int uid)

此方法在API级别18中已被弃用。
JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

Parameters
uid int
Returns
long

也可以看看:

getUidUdpRxPackets

Added in API level 12
long getUidUdpRxPackets (int uid)

此方法在API级别18中已被弃用。
JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

Parameters
uid int
Returns
long

也可以看看:

getUidUdpTxBytes

Added in API level 12
long getUidUdpTxBytes (int uid)

此方法在API级别18中已被弃用。
JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

Parameters
uid int
Returns
long

也可以看看:

getUidUdpTxPackets

Added in API level 12
long getUidUdpTxPackets (int uid)

此方法在API级别18中已被弃用。
JELLY_BEAN_MR2开始,传输层统计信息不再可用,并始终返回UNSUPPORTED

Parameters
uid int
Returns
long

也可以看看:

incrementOperationCount

Added in API level 14
void incrementOperationCount (int operationCount)

在调用线程上当前活动的计费标签下执行的网络操作的递增计数。 这可以用来导出每个操作的字节数。

Parameters
operationCount int: Number of operations to increment count by.

incrementOperationCount

Added in API level 14
void incrementOperationCount (int tag, 
                int operationCount)

在给定的计费标签下执行网络操作的递增计数。 这可以用来导出每个操作的字节数。

Parameters
tag int: Accounting tag used in setThreadStatsTag(int).
operationCount int: Number of operations to increment count by.

setThreadStatsTag

Added in API level 14
void setThreadStatsTag (int tag)

设置活动标记以便在源自当前线程的流量计费Socket时使用。 每个线程仅支持一个活动标记。

更改仅在后续调用 tagSocket(Socket)期间 tagSocket(Socket)

0xFFFFFF000xFFFFFFFF之间的标签在代表应用程序执行流量时保留并由系统服务(如 DownloadManager在内部使用。

Parameters
tag int

也可以看看:

tagDatagramSocket

Added in API level 24
void tagDatagramSocket (DatagramSocket socket)

使用任何对当前线程有效的统计参数标记给定的DatagramSocket 随后的调用总是替换任何现有的参数。 完成后,拨打untagDatagramSocket(DatagramSocket)删除统计参数。

Parameters
socket DatagramSocket
Throws
SocketException

也可以看看:

tagSocket

Added in API level 14
void tagSocket (Socket socket)

使用任何对当前线程有效的统计参数标记给定的Socket 随后的调用总是替换任何现有的参数。 完成后,请致电untagSocket(Socket)删除统计参数。

Parameters
socket Socket
Throws
SocketException

也可以看看:

untagDatagramSocket

Added in API level 24
void untagDatagramSocket (DatagramSocket socket)

从给定的 DatagramSocket删除任何统计参数。

Parameters
socket DatagramSocket
Throws
SocketException

untagSocket

Added in API level 14
void untagSocket (Socket socket)

从给定的 Socket删除任何统计参数。

Parameters
socket Socket
Throws
SocketException

Hooray!