测量Android上的数据漫游流量?

Ben*_*erg 7 android measurement traffic roaming

刚从冰岛一个非常愉快的假期回来,等待我的电话公司的数据漫游账单.我希望尽可能地限制我的流量,但我想提前知道.我使用了非常好的应用程序NetCounter但它根本没有测量漫游数据流量.

所以我想构建我自己的应用程序,仅测量漫游数据流量.我有几个布尔值开始(NetworkInfo.IsRoaming()TelephonyManager.isNetworkRoaming()),但我不知道如何衡量流量true.

所以问题是:如何在漫游时测量数据流量?(像API级别8 TrafficStats功能之类的东西就是我所追求的,但对于API级别3而言).二手SmartPhone是三星Galaxy i7500(Android 1.6)

谢谢你的时间!

Lat*_*SuD 9

方法1.解析"/ proc/net/dev".

在我的手机中它看起来像:

Inter-|   Receive                                                |  Transmit
 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
    lo:     712       8    0    0    0     0          0         0      712       8    0    0    0     0       0          0
dummy0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
rmnet0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
rmnet1:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
rmnet2:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
 wlan0:  146112     423   32    0    0     0          0         0    42460     409    0    0    0     0       0          0
Run Code Online (Sandbox Code Playgroud)

在我的手机中,"rmnet0"行是保存移动线路互联网统计数据的行.我希望它的格式在内核版本之间不会有所不同.

方法2:解析"/ sys/class/net".

我想这是推荐的方法.如下所示:http://www.jaqpot.net/svn/android/netcounter/trunk/src/net/jaqpot/netcounter/service/SysClassNet.java