android数据监控
㈠ android app测试时,怎么监控cpu等数据
电脑管家查找cpu温度监控方法如下:1、点击打开“电脑管家”右下角的“工具箱”。2、选择“硬件检测”。3、在页面右侧就可以看到温度检测数据。
㈡ android流量监控系统的设计与实现需要完成什么功能
主要功能应该就是各种网络环境下的流量数据吧,android系统自带TrafficStats 类来实现对流量统计的操作,具体操作可以参考:
/** 获取手机通过 2G/3G 接收的字节流量总数 */
TrafficStats.getMobileRxBytes();
/** 获取手机通过 2G/3G 接收的数据包总数 */
TrafficStats.getMobileRxPackets();
/** 获取手机通过 2G/3G 发出的字节流量总数 */
TrafficStats.getMobileTxBytes();
/** 获取手机通过 2G/3G 发出的数据包总数 */
TrafficStats.getMobileTxPackets();
/** 获取手机通过所有网络方式接收的字节流量总数(包括 wifi) */
TrafficStats.getTotalRxBytes();
/** 获取手机通过所有网络方式接收的数据包总数(包括 wifi) */
TrafficStats.getTotalRxPackets();
/** 获取手机通过所有网络方式发送的字节流量总数(包括 wifi) */
TrafficStats.getTotalTxBytes();
/** 获取手机通过所有网络方式发送的数据包总数(包括 wifi) */
TrafficStats.getTotalTxPackets();
/** 获取手机指定 UID 对应的应程序用通过所有网络方式接收的字节流量总数(包括 wifi) */
TrafficStats.getUidRxBytes(uid);
/** 获取手机指定 UID 对应的应用程序通过所有网络方式发送的字节流量总数(包括 wifi) */
TrafficStats.getUidTxBytes(uid);
望采纳。
㈢ 安卓系统的流量监控问题
您好:
这样的情况明显是您刷机的时候使用的rom包是损坏或者是缺损的,所以会导致您的手机在刷完机以后出现流量监控API异常失效的情况,这样的情况只有更换一个rom包重新刷机,其他暂时没有有效简洁的方法的,然后建议您使用腾讯手机管家保护您的手机安全,您可以点击这里下载最新版的腾讯手机管家:腾讯手机管家下载
腾讯电脑管家企业平台:http://..com/c/guanjia/
㈣ android 怎么实现流量监控
TrafficStats类存在好几个查看流量的方法 getMobileRxBytes() getTotalRxBytes() getUidRxBytes() && getUidTxBytes函数 测试时发现各进程getUidRxBytes的值的总值与MobileRxBytes不一致 查看了下getUidRxBytes() && getUidTxBytes函数native 代码发现此方法通过读取 "/proc/uid_stat/%d/tcp_rcv" 和"/proc/uid_stat/%d/tcp_snd"文件来获取流量 ,其中%d为进程uid。 这两个文件为非标准linux内核文件,由android内核层/kernel/net/Socket.c 的__sock_sendmsg函数负责写入, 用户层套接字通信在内核层最终会调用此函数 (包括本地套接字和网络套接字), 因此根据TrafficStats.getUidRxBytes() && getUidTxBytes获取的流量既包括了网络流量亦包括了本地流量 而MobileRxBytes 读取的sys/class/net/rmnet0/statistics/rx_bytes 读取的sys/class/net/ppp0/statistics/rx_bytes 此为linux标准内核,略过 查看原帖>>
㈤ android 如何 监控 应用 数据流量
你可以下载一个呀
现在杀毒软件都带有流量监控的功能呢
我专门下载了一个腾讯手机管家
在腾讯手机管家--健康优化--流量管理
针对于上网浏览监控做一个统计
上网管理:实时统计当月流量,防止超额。
手机上网一旦流量超出的费用是很高的
建议下载一个进行流量监控防止出现这类意外,
同时还可以防止病毒,清理手机的垃圾文件,挺实用的。
㈥ android开发中监控平台有什么作用
1. android实现流量监控在2.2版本之前没有专门的类和接口,我网上查看的大家的方法基本上都是读取一个文件/proc/net/dev,这个方法我没有使用,没有进行深入研究。
2. 我是用的是android2.2及之后版本有的流量监控类,TrafficStats,这个类里提供了以下几种方法,
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的发送字节数
由于项目中需要用到监控各个应用的流量,我的思路是,获取手机中所有具有联网权限的应用,并且以列表形式显示出来,然后选择相应的应用,即可对其进行流量监控。
这里用到的便是 getUidRxBytes(int uid)和 getUidTxBytes(int uid) 这两个方法。在我获取手机中所有具有联网权限的应用之前,我是把手机中所有应用的流量使用情况都显示了出来,我发现,连拨号器这种都有流量,最后我得出结论,这两个类方法获取的流量包括本地流量,所以就会出现连没有联网权限的应用都发送和接收字节数这种情况。
下面上一段我用于流量监控的代码。
[java] view plainprint?
public void dingshi(){
mdb.openDB();//打开数据库
runnableapp=new Runnable(){ //线程对象
@Override
public void run() {
while(flag==0){//用于停止线程时的判断
try {
Thread.sleep(1000);//每1000ms进行流量监控
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int i=0;
Log.v("app", "id---->"+Thread.currentThread().getId());
try{
for (i=0;i<listuser.size();i++) {//listuser想要监控的应用,只要列表不再重新选择,则获取应用的顺序一定
Log.v("app", "开始"+Thread.currentThread().getId());
uid=Integer.parseInt(listuser.get(i)); //列表中第i个选择的应用的uid
appinfo=listappinfo.get(i);
Calendar calendar = Calendar.getInstance();
int month=calendar.get(Calendar.MONTH)+1;
int day=calendar.get(Calendar.DAY_OF_MONTH);
int hour=calendar.get(Calendar.HOUR_OF_DAY);
int minute=calendar.get(Calendar.MINUTE);
int second=calendar.get(Calendar.SECOND);
float mill=calendar.get(Calendar.MILLISECOND);
String time= calendar.get(Calendar.YEAR) + "年"
+ month + "月"
+ day + "日"
+ hour + "时"
+ minute + "分"
+second+"秒"
+mill+"毫秒";
time02[i]=day*24*60*60+hour*60*60+minute*60+second+mill/1000;//单位是秒 新获取的时间,肯定大于前面获取的时间
System.out.println("现在的时间"+i+"--->"+time02[i]);
System.out.println("之前的时间"+i+"--->"+time01[i]);
recv[i]=TrafficStats.getUidRxBytes(uid);
if(recv[i]>0) {
recv[i]=recv[i]/(1024*1024);//单位化为MB
}else{
recv[i]=0;
}
tran[i]=TrafficStats.getUidTxBytes(uid);
if(tran[i]>0){
tran[i]=tran[i]/(1024*1024);
}
else{
tran[i]=0;
}
totalapp[i]=recv[i]+tran[i];
recvrate[i]=((recv[i]-recv01[i])*1024*1024)/(time02[i]-time01[i]); //单位为B/s //均为瞬时速率
tranrate[i]=((tran[i]-tran01[i])*1024*1024)/(time02[i]-time01[i]);
totalapprate[i]=((totalapp[i]-totalapp01[i])*1024*1024)/(time02[i]-time01[i]);
System.out.println(appinfo+i+"---->" +"接收速率---->"+recvrate[i]+ "发送速率---->" + tranrate[i]+"total速率---->"+totalapprate[i]);
System.out.println("时间间隔"+i+"---->"+(time02[i]-time01[i]));
recv01[i]=recv[i];//给全局变量赋新值
tran01[i]=tran[i];
totalapp01[i]=totalapp[i];
time01[i]=time02[i];
System.out.println("uid=" + uid +"---->"+ "recv=" + recv[i]);
System.out.println("uid=" + uid +"---->"+ "tran=" + tran[i]);
System.out.println("uid=" + uid +"---->"+ totalapp[i]);
System.out.println("appinfo=" + appinfo );
try{
mdb.addTrafficData(time, appinfo, String.valueOf(uid), String.valueOf(tran[i]),String.valueOf(recv[i]),String.valueOf(totalapp[i]),String.valueOf(tranrate[i]),String.valueOf(recvrate[i]),String.valueOf(totalapprate[i]));
}catch(Exception e){
System.out.println("----->app出现异常");
}
Log.v("app", "结束"+Thread.currentThread().getId());
}
}catch(Exception e){
System.out.println("异常");
}
}
}
};
Thread AppThread = new Thread(runnableapp);
AppThread.start();
㈦ Android上的实时视频监控怎么实现的
因该是通过长连接,不断的采集手机端的摄像数据
㈧ android如何监控统计各个应用程序运行的时间
1.打开拨号,输入*#*#4636#*#*
备注:此数据通常关机清零