获取用户PID

1、SDK版本大于26

       1.找出所属pid

              命令:ps  -A|grep packageName(WINDOWS环境下将grep替换成findstr),下图第二列数据即为 PID

2、SDK版本小与26:ps  |grep packageName(跟上面方法类似 )

 

获取用户UID

命令: dumpsys package packageName|findstr userId

Android环境下获取内存

通过ActivityManager获取对应PID占用的内存

ActivityManager mAm = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);MemoryInfo[] memoryInfoArray = mAm.getProcessMemoryInfo(pids);MemoryInfo pidMemoryInfo = memoryInfoArray[0];value[0] = pidMemoryInfo.nativePss;value[1] = pidMemoryInfo.dalvikPss;value[2] = pidMemoryInfo.getTotalPss();

Android环境下获取流畅度

Choreographer.getInstance().postFrameCallback(       new Choreographer.FrameCallback(){              @Override              public void doFrame(long frameTimeNanos){                                //每次绘制都加1                            result+=1;}       })//上面这个方法需要不停调用//计算公式:   流畅度=( result*1000)/采集间隔周期(单位ms)

Android环境下获取消耗的流量

获取上传流量

TrafficStats.getUidTxBytes(pid)

获取下载流量

TrafficStats.getUidRxBytes(pid)

 

ADB命令获取内存

获取设备总内存命令:adb shell cat /proc/meminfo |findstr MemTotal

获取指定包名占用内存: adb shell dumpsys meminfo pakagename

获取指定包名内存方式二:adb shell top  -n 1 |findstr packageName   (部分机型包名结尾会显示+导致无法匹配 )

 

获取CPU占有率的方法

1.获取指定pid的CPU开始执行前占用时间

       命令:adb shell cat /proc/pid/stat  (如果文件不存在,则说明该进程不是Android系统维护,无法获取对应CPU)

   startProcessCpu =24446+10320;

2.获取总的CPU开始执行前占用时间

       命令:adb shell cat /proc/stat

 startCpu=9096266+....323086+0+0+0;

3.休眠1秒

4.再次执行步骤1、2

  endProcessCpu=步骤1;

  endCpu =步骤2;

5.最后取得CPU占用率公式如下:

((endProcessCpu-startProcessCpu)/(endCpu-startCpu))*100

6.进程的jiffies数为:startProcessCpu

 

流量

1、下载流量

       命令: adb shell cat /proc/net/xt_qtaguid/stats |grep -E "uid"

第6列数据即为下载流量(这里需要将LO(本地)的流量排除掉)

2、上传流量

       命令: adb shell cat /proc/net/xt_qtaguid/stats |grep -E " uid"

第8列数据即为下载流量(主要需要将LO(本地)的流量排除掉)

更多相关文章

  1. Android(安卓)Webservices 返回多行多列数据(Dataset)
  2. Android(安卓)AM命令及使用
  3. Android(安卓)银行卡扫描识别获取卡号
  4. Android自定义控件之自定义属性解析
  5. Android动态获取U盘路径
  6. 解决adb的adb server version (32) doesn't match this client (
  7. Android之创建自定义属性
  8. android启动过程配置文件的解析与语法 .
  9. android 工具 HierarchyViewer activity树结构查看

随机推荐

  1. android中少用静态变量(android静态变量s
  2. Android应用程序消息处理机制(Looper、Han
  3. Android原生方式获取经纬度和城市信息
  4. Android原生json类org.json.JSONObject初
  5. Android(安卓)核心分析(12) -----Android
  6. Android近期学习总结——开发准备
  7. 阿里云 centos6.3 64位机器安装android s
  8. Unity3d Android(安卓)SDK接入解析(二)Unit
  9. Android(安卓)利用Matrix实现图片随手指
  10. 浅谈Java中Collections.sort对List排序的