`
lovehong0306
  • 浏览: 12195 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
社区版块
存档分类
最新评论

Android流量统计TrafficStats类的使用

阅读更多

文章出处:http://gundumw100.iteye.com/blog/1294167

 

对于Android流量统计来说在2.2版中新加入了TrafficStats类可以轻松获取,其实本身TrafficStats类也是读取Linux提供的文件对象系统类型的文本进行解析。android.net.TrafficStats类中,提供了多种静态方法,可以直接调用获取,返回类型均为 long型,如果返回等于-1代表 UNSUPPORTED 当前设备不支持统计。

static long  getMobileRxBytes()  //获取通过Mobile连接收到的字节总数,不包含WiFi  
static long  getMobileRxPackets()  //获取Mobile连接收到的数据包总数  
static long  getMobileTxBytes()  //Mobile发送的总字节数  
static long  getMobileTxPackets()  //Mobile发送的总数据包数  
static long  getTotalRxBytes()  //获取总的接受字节数,包含Mobile和WiFi等  
static long  getTotalRxPackets()  //总的接受数据包数,包含Mobile和WiFi等  
static long  getTotalTxBytes()  //总的发送字节数,包含Mobile和WiFi等  
static long  getTotalTxPackets()  //发送的总数据包数,包含Mobile和WiFi等   
static long  getUidRxBytes(int uid)  //获取某个网络UID的接受字节数  
static long  getUidTxBytes(int uid) //获取某个网络UID的发送字节数 
 总接受流量TrafficStats.getTotalRxBytes(), 

总发送流量TrafficStats.getTotalTxBytes()); 
不包含WIFI的手机GPRS接收量TrafficStats.getMobileRxBytes()); 
不包含Wifi的手机GPRS发送量TrafficStats.getMobileTxBytes()); 

某一个进程的总接收量TrafficStats.getUidRxBytes(Uid)); 
某一个进程的总发送量TrafficStats.getUidTxBytes(Uid)); 

这些都是从第一次启动程序到最后一次启动的统计量。并不是这篇文章里所说的“从本次开机到本次关机的统计量”! 

用法举例,注意这里得到的单位都是"KB"

public long getTotalRxBytes(){  //获取总的接受字节数,包含Mobile和WiFi等  
        return TrafficStats.getTotalRxBytes()==TrafficStats.UNSUPPORTED?0:(TrafficStats.getTotalRxBytes()/1024);  
    }  
    public long getTotalTxBytes(){  //总的发送字节数,包含Mobile和WiFi等  
        return TrafficStats.getTotalTxBytes()==TrafficStats.UNSUPPORTED?0:(TrafficStats.getTotalTxBytes()/1024);  
    }  
    public long getMobileRxBytes(){  //获取通过Mobile连接收到的字节总数,不包含WiFi  
        return TrafficStats.getMobileRxBytes()==TrafficStats.UNSUPPORTED?0:(TrafficStats.getMobileRxBytes()/1024);  
    }  
 
分享到:
评论

相关推荐

    Android App流量统计源码

    "Android App流量统计源码"提供了一种方法来实现这一目标。这个源码项目专注于统计应用程序在WiFi和移动网络环境下消耗的数据流量,并通过柱状图和折线图可视化这些数据,使得开发者和用户能够清晰地看到流量的使用...

    android_net_TrafficStats.rar_The Number

    在Android系统中,`TrafficStats` 是一个非常重要的类,它位于 `android.net` 包内,用于收集和提供网络接口的流量统计信息。这个类提供了监控和度量应用程序及整个系统的网络数据传输的能力,包括上传和下载的数据...

    android 流量统计源代码

    综上所述,开发一个Android流量统计工具需要对网络接口、数据持久化以及UI设计有深入理解。通过监听网络状态、统计流量数据并持久化,我们可以为用户提供一个实用的流量监控工具。对于提供的压缩包文件...

    Android~流量统计参考

    总的来说,Android流量统计涉及网络连接的管理和流量数据的统计,开发者可以通过合理的API调用来实现这一功能。SmallQ源码作为一个参考,可以帮助我们更好地理解和实践这一过程,从而在自己的应用中集成这一实用功能...

    android流量统计

    本文将深入探讨Android流量统计的实现方法,包括API的使用、自定义解决方案以及如何结合博客源码(DataStatiscTest)进行实践。 一、Android系统自带的流量统计API 1. ConnectivityManager:Android提供的网络连接...

    Android流量统计

    * 返回所有有互联网权限的应用的流量信息 */ public List<TrifficInfo> getTrifficInfos(){ //获取到配置权限信息的应用程序 List<PackageInfo> packageInfos=pm.getInstalledPackages(PackageManager.GET_...

    Android应用源码可以按时间段查询的流量统计项目

    在Android应用开发中,流量统计是一项非常重要的任务,它能够帮助开发者了解应用在网络上的行为,监控数据使用情况,优化用户体验,防止不必要的流量消耗,甚至在必要时为用户提供按时间范围查询流量消耗的功能。...

    Android例子源码安卓后台服务监控流量统计

    本例子是一个安卓流量统计的小例子,可以统计每个应用的网络流量,区分移动网络与WIFI 技术点: 使用TrafficStats记录流量变化 使用Service,BroadcastReceiver监控网络状态变化 使用sqlite记录各个应用已用流量数据...

    Android获取指定应用的流量统计.rar

    在Android平台上,对指定应用进行流量统计是一项重要的功能,它可以帮助开发者或用户了解各个应用程序的网络使用情况,以便优化网络资源的分配,节省数据费用,或者监控应用的行为。本教程将详细阐述如何在Android...

    android流量监控统计

    统计每个应用的网络流量,区分移动网络与WIFI 技术点: 使用TrafficStats记录流量变化 使用Service,BroadcastReceiver监控网络状态变化 使用sqlite记录各个应用已用流量数据

    Android例子源码安卓后台服务监控流量统计.zip

    本例子是一个安卓流量统计的小例子,可以统计每个应用的网络流量,区分移动网络与WIFI 技术点: 使用TrafficStats记录流量变化 使用Service,BroadcastReceiver监控网络状态变化 使用sqlite记录各个应用已用流量数据...

    应用流量统计

    2. **TrafficStats**: 这是另一个重要的类,提供了网络流量统计的接口。例如,`getMobileRxBytes()`和`getMobileTxBytes()`分别可以获取移动数据接收和发送的字节数,`getTotalRxBytes()`和`getTotalTxBytes()`则...

    Android手机流量控制源码

    总的来说,这个"Android手机流量控制源码"项目为开发者提供了一套工具,可以用来监控和控制Android应用的网络流量,包括获取流量统计、设置流量限制和提醒等功能。通过深入研究这些源码,开发者不仅可以学习到如何在...

    Android应用源码安卓流量统计独立功能项目.zip

    在Android平台上,开发一款应用以实现流量统计...综上所述,这个Android流量统计项目涵盖了从底层网络数据获取到上层UI展示的多个技术层面,对Android开发者来说,是一个很好的学习和实践平台,有助于提升综合技能。

    安卓流量统计独立功能源码.zip

    1. **流量统计API**:在Android系统中,开发者可以使用`ConnectivityManager`和`TrafficStats`类来获取网络流量信息。`ConnectivityManager`负责管理网络连接,而`TrafficStats`则提供了统计网络流量的方法,如`...

    Android_获取进程的上下行流量

    这个类提供了一系列静态方法,可以帮助开发者获取设备上的各种流量统计数据。需要注意的是,并非所有平台都支持这些统计功能,在不支持的情况下会返回 `UNSUPPORTED(-1)`。 #### 相关 API 方法详解 下面是一些关键...

    android流量监控项目

    综上所述,“android流量监控项目”涵盖了Android的网络API使用、数据持久化、UI设计、权限管理、服务与广播接收器等多个方面。通过学习和实践此类项目,开发者不仅可以提升自身技能,还能为用户提供实用的应用,...

    流量统计源码.zip

    这些信息可以通过Android的TrafficStats类获取,包括移动数据(如3G、4G)和Wi-Fi的数据用量。 3. **时间区间处理**:为了允许用户指定时间范围,源码可能会包含一个时间选择器或者使用当前系统时间作为默认值。...

    android 流量监控源码

    TrafficStats是Android提供的一个类,用于收集和报告网络接口的流量统计信息。它可以获取到移动数据和Wi-Fi的数据上传、下载总量,这对于实现流量监控至关重要。 4. **ContentProvider**: 为了持久化存储流量...

Global site tag (gtag.js) - Google Analytics