流量监控模块的逻辑
dao框架 摘抄http://git.oschina.net/yeguozhong/AndroidGenericDao/tree/master
1、如何做到流量监控
流量分为 receive和send两部分。同时总的需要区分wifi和gprs
2、监控数据逻辑
记录标记 (区分 wifi 和gprs ) :将数据记录到 t_tmp_record_wap 中,开启t_tmp_status_wap 中的标记位
记录数据(区分 wifi 和gprs) :扫描 t_tmp_status_wap 表中记录 case 1: 数据记录条数不等于2且大于0 ,清楚数据(该数据有错),插入初始化数据 ,并且清空t_tmp_record_wap表中数据
case 2: 数据记录合适==2 :判断wifi标记打开或者gprs打开么 case 2——1:判断wifi标记位 case 2-1-1:wif标记位打开 :扫描tmprecord记录 case2-1-1-1如果具有wifi记录 存储log信息,record信息
case2-1-1-2如果没有wifi信息 :打印语句
case 2-1-2:wifi记录关闭:log记录
case 2-2:判断gprs标记位:(和wifi判断同理)
case 3:执行完上述后:判断wifi和gprs标记位,如果是开启的话就关闭,关闭的话不管,其他情况重置标记位(删除和重新注值),清空record_tmp信息 。
主要逻辑如上,需要记录标记以及记录数据
那么整个监控模块需要 记录标记位的时间点在于 开启wifi以及gprs的时候.
记录数据 : 在关闭wifi,关闭gprs,关机的时候
/
/
/
表结构整理 ///
/
/
/
/
/
/
t_tmp_wap 只有两条数据
表结构 statu timesmt
状态 时间戳
0或者1 0 wifi的开启或关闭状态记录
数据2或者1 0 gprs的开启或关闭记录状态
表结构 t_tmp_record_wap 中间状态临时记录表
uid pckname timesmt wapdata status
程序uid 程序pckname 时间戳 使用流量大小 记录状态0 代表wifi临时记录 1代表gprs临时记录
表结构 t_wap_record_table 流量花费情况 (没有时间戳的原因是记录应用所有流量花费,所以时间没意义)
uid pckname wapdata status
程序uid 程序pckname 程序消耗流量 记录状态0 代表wifi临时记录 1代表gprs临时记录
关机关机 再执行一次流量结算只不过分别执行wifi和gprs关闭的结算操作
t_use_log_wap log记录表
uid pckname startwapdata endwapdata starttimesmt endtimesmt status
程序uid 程序pckname 启动记录当时程序已经消耗流量 统计时记录当时花费流量 启动记录时时间 统计记录时间 记录状态0 代表wifi临时记录 1代表gprs临时记录
2016年1月13日10:13:15 : 删除了所有表的主键,用着麻烦
口令 :
1、删除表
drop table t_wap_record_table ;
drop table t_tmp_record_wap ;
drop table t_tmp_wap ;
dao框架 摘抄http://git.oschina.net/yeguozhong/AndroidGenericDao/tree/master
1、如何做到流量监控
流量分为 receive和send两部分。同时总的需要区分wifi和gprs
2、监控数据逻辑
记录标记 (区分 wifi 和gprs ) :将数据记录到 t_tmp_record_wap 中,开启t_tmp_status_wap 中的标记位
记录数据(区分 wifi 和gprs) :扫描 t_tmp_status_wap 表中记录 case 1: 数据记录条数不等于2且大于0 ,清楚数据(该数据有错),插入初始化数据 ,并且清空t_tmp_record_wap表中数据
case 2: 数据记录合适==2 :判断wifi标记打开或者gprs打开么 case 2——1:判断wifi标记位 case 2-1-1:wif标记位打开 :扫描tmprecord记录 case2-1-1-1如果具有wifi记录 存储log信息,record信息
case2-1-1-2如果没有wifi信息 :打印语句
case 2-1-2:wifi记录关闭:log记录
case 2-2:判断gprs标记位:(和wifi判断同理)
case 3:执行完上述后:判断wifi和gprs标记位,如果是开启的话就关闭,关闭的话不管,其他情况重置标记位(删除和重新注值),清空record_tmp信息 。
主要逻辑如上,需要记录标记以及记录数据
那么整个监控模块需要 记录标记位的时间点在于 开启wifi以及gprs的时候.
记录数据 : 在关闭wifi,关闭gprs,关机的时候
/
/
/
表结构整理 ///
/
/
/
/
/
/
t_tmp_wap 只有两条数据
表结构 statu timesmt
状态 时间戳
0或者1 0 wifi的开启或关闭状态记录
数据2或者1 0 gprs的开启或关闭记录状态
表结构 t_tmp_record_wap 中间状态临时记录表
uid pckname timesmt wapdata status
程序uid 程序pckname 时间戳 使用流量大小 记录状态0 代表wifi临时记录 1代表gprs临时记录
表结构 t_wap_record_table 流量花费情况 (没有时间戳的原因是记录应用所有流量花费,所以时间没意义)
uid pckname wapdata status
程序uid 程序pckname 程序消耗流量 记录状态0 代表wifi临时记录 1代表gprs临时记录
关机关机 再执行一次流量结算只不过分别执行wifi和gprs关闭的结算操作
t_use_log_wap log记录表
uid pckname startwapdata endwapdata starttimesmt endtimesmt status
程序uid 程序pckname 启动记录当时程序已经消耗流量 统计时记录当时花费流量 启动记录时时间 统计记录时间 记录状态0 代表wifi临时记录 1代表gprs临时记录
2016年1月13日10:13:15 : 删除了所有表的主键,用着麻烦
口令 :
1、删除表
drop table t_wap_record_table ;
drop table t_tmp_record_wap ;
drop table t_tmp_wap ;