zoukankan      html  css  js  c++  java
  • APP测试-adb命令

    常用的

    1.adb devices 获取设备信息

    状态:
    device 正常,可调试

    offline 仅连接不能调试,可能adb与安装系统不匹配
    unauthorized 连接后不能调试,未在手机同意调试

    adb devices -l 手机相关信息

    command c 终止当前命令

    2.adb -s 设备号 多个模拟器


    3.adb install apk路径 安装应用



    adb install -r apk路径 覆盖安装

    4.adb uninstall apk包名 卸载应用

    5.adb pull /设备文件路径/ 计算机文件路径 设备文件拉到计算机

    6.adb push 计算机文件路径 /设备文件路径/ 计算机文件推到设备

    7.adb start-server 开启服务

    8.adb kill-server 关闭服务

    9.adb reboot 重启手机

    10.adb logcat 查看日志

    将日志打印到计算机 adb logcat >文件路径/文件名+后缀(>重定向的意思)
    adb logcat >/Users/zhangshan/Desktop/logcat.txt
    adb logcat ->C:/log03.txt(Windows)
    将日志打印到手机 adb logcat -f 文件路径/文件名+后缀

    打印日志

    adb logcat -v time *:e -v 参数 time 时间戳 -打印相关参数
    adb logcat | grep 关键字 过滤相关日志
    adb logcat -v time | grep "Push" 过滤单个关键字
    adb logcat -v time | grep "Push|Pull" 过滤多个关键字
    adb logcat -v time | grep E/AndroidRuntime 过滤异常信息

    分析日志

    I 提示信息 (information)
    V 所有信息 (verbose)
    D 调试信息 (debug)
    W 警告信息 (warning)
    E 错误信息(error crash fatal except )
    PID (进程ID)

    分析错误信息

    搜索 crash
    Fatal Exception 开头
    Force finishing 结束
    正文: 方法调用栈
    java.lang.RuntimeException:报错应用包名及activity
    java.lang.异常类型
    Caused by 错误原因
    java:代码行

    分析anr无响应

    搜索 ANR in 后跟包名
    Reason 错误原因
    根据CPU分析是不是CPU过高导致
    anr信息,存在设备 /data/anr/traces.txt中,存放方法调用栈信息

    11.adb shell 登录设备 远程执行Linux命令

    常用Linux命令

    cd /文件路径/ 进入到设备文件

    system系统安装的应用(不可卸载)


    data 第三方安装的应用(可卸载)

    数据目录 data/data


    ls 查看所有文件

    ls -l 查看文件详细信息 ll


    cat 查看文件内容
    find 查找文件
    mkdir pp 创建名为pp的文件夹
    vmstat 查看资源使用情况

    exit 退出

    13.adb shell ps 查看进程


    ps | grep 进程名 过滤进程

    14.adb shell pm list package 安装应用包名

    aapt d badging apk路径 apk详细信息

    15.adb shell pm clear 包名 清除应用数据

    16.adb shell am force-stop 包名 杀死进程

    17.adb shell am start -n 包名/activity名 启动应用到指定activity

    18.adb shell screencap -p >/计算机路径/+文件名+后缀 屏幕截图到计算机


    或者 adb shell /system/bin/screencap -p /sdcard/screenshot.png
    adb pull /sdcard/screenshot.png /Users/zhangshan/Desktop/

    20.adb shell cat /proc/meminfo 获取内存情况

    21.adb shell dumpsys meminfo 包名 获取单个应用内存情况


    adb shell dumpsys meminfo com.douban.frod

    22.adb shell dumpsys cpuinfo 获取cpu情况

    23.adb shell dumpsys package 包名 | grep uid 获取uid

    adb shell dumpsys package com.douban.frodo |grep uid

    通过uid获取流量
    adb shell cat /proc/net/xt_qtaguid/stats | grep 10070

    24.adb shell dumpsys activity | grep 'mFocusedActivity'获取当前启动APP包名

    30.adb shell 'top -n 1|grep com.douban.frodo' 获取单个应用最高的CPU占用

    31.adb shell 'ps |grep com.douban.frodo' 获取APP的pid

    32.adb shell 'ps |grep com.douban.frodo' 获取APP的pid

    33.adb shell cat /proc/pid号/net/dev通过pid获取流量


    34.adb shell logcat >文件路径 log打印到手机中

    adb shell
    logcat -v > /sdcard/log1.txt &

    以下是不常用的

    40.adb version 查看adb版本号

    41.adb concent 127.0.0.1:设备端口号 查看设备连接状态

    42.netstat -ano | gerp 端口进程号(adb默认是5037)解决adb端口被占用
    taskkill -f -pid 进程号 杀死进程
    43.adb connect 通过WiFi远程连接手机
    adb disconnect 取消WiFi远程连接手机

    参考文章:https://blog.csdn.net/HDFQQ188816190/article/details/98599940

  • 相关阅读:
    5.对象创建型模式-原型PROTOTYPE
    4.对象创建型模式-工厂方法
    3.对象创建型模式-生成器
    一个小应用的dbcp和c3p0配置实例
    利用 java.lang.Runtime.addShutdownHook() 钩子程序,保证java程序安全退出
    初探maven插件机制
    【转载】Git push时重复输入用户名密码的问题
    【转载】 ERROR 1045 (28000): Access denied for user root@localhost (using password: NO)
    【转载】[Java]读取文件方法大全
    【原创】iframe与父页面之间,变量、方法互相调用
  • 原文地址:https://www.cnblogs.com/zhangshan33/p/12255650.html
Copyright © 2011-2022 走看看