zoukankan      html  css  js  c++  java
  • android adb shell and monkey 学习记录

    Monkey环境:

        android SDK and JDK 

        SDK目录下的platform-tools和tools目录要配置环境变量

    查看版本:

        ADB 的安装这里就不多说了,输入以下命令有如下提示就证明你环境ok,否则自行网上搜索解决下。

        > adb version

    查看连接设备:

        输入以下命令可以查询已连接的设备与模拟器:

        > adb devices

    查看appPackage 和 appActivity:

        设备运行程序

        > adb logcat > pathlog.txt

        log.txt中搜索关键字start proc ,关键字后边可以看到启动的进程appPackage 和 appActivity

    安装一个apk,执行以下命令:

        > adb install <packagename>  #文件名过长、文件名有中文都有可能导致安装失败。

    覆盖安装:

        > adb install -r /path/demo.apk

    直接卸载

        > adb uninstall <packagename>

    卸载 app 但保留数据和缓存文件:

        > adb uninstall -k <packagename>

    Monkey事件类型:

        -s <seed>        #伪随机数生成器的种子值

        --throttle <毫秒数>        #在事件之间插入固定延迟

        --pct-touch <百分比>        #调整触摸事件的百分比

        --pct-motion <百分比>        #调整动作事件的百分比

        --pct-pinchzoom <百分比>        #调整二指缩放事件的百分比

        --pct-trackball <百分比>        #调整轨迹事件的百分比

        --pct-rotation <百分比>        #调整屏幕旋转事件的百分比

        --pct-nav <百分比>        #调整‘基本’导航事件的百分比

        --pct-majornav <百分比>        #调整‘主要’导航事件的百分比

        --pct-syskeys <百分比>        #调整‘系统’按键事件的百分比

        --pct-appswith <百分比>        #调整启动Activity的百分比

        --pct-flip <百分比>            #调整键盘事件的百分比

        --pct-anyevent <百分比>        #调整其他类型时间的百分比

    Monkey约束限制类参数:

        -p <包名>            #指定一个包或多个包,每个-p只能用于一个包

        -c <类别名>            #指定一个或几个类别,每个-c只能用于一个类别

    命令:

        PC启动:

            > adb shell monkey [options] <count>

        Shell端启动:

            > adb shell

            > monkey [options] <count>

            两者区别是,PC端启动运行日志可以保存到PC上,Shell端启动运行日志保存到手机里。

        杀手机Monkey进程:

            > adb shell ps |grep monkey                #获取packagename的进程ID

            > adb shell kill pid

        启动/停止 Server

            一般来说,下面两个命令基本不会用到,因为只要设备连接正确,会自动启动 adb server 的,不过大家也需要知道这俩命令:

        启动 adb server :

            > adb start-server

        停止 adb server :

            > adb kill-server

        列出手机装的所有app的包名:

            > adb shell pm list packages

        列出系统应用的所有包名:

            > adb shell pm list packages -s

        列出除了系统应用的第三方应用包名:

            > adb shell pm list packages -3

        使用 grep 来过滤:

            > adb shell pm list packages | grep qq

        清除应用数据与缓存

            > adb shell pm clear <packagename>

        强制停止应用

            > adb shell am force-stop <packagename>

        获取logcat日志信息:

            > adb logcat

            > adb logcat -d > 路径文件名.txt        #一定时间内的log输出到文件里

        获取内存信息:

            > adb shell dumpsys meminfo <进程名>

        获取CPU消耗信息:

            > adb shell top -n 1 |find "进程名"

        获取电量信息:

            > adb shell dumpsys battery

        获取GPU信息:

            > adb shell dumpsys gfxinfo <进程名>

        查看被测应用的进程ID:

            > adb shell ps |grep <packagename>

        查看被测应用的用户ID:

            > adb shell cat /proc/$pid/status

        获取流量信息:

            > adb shell cat/proc/uid_stat/<被测应用的uid>/tcp_rcv

        重启

            > adb reboot

        获取序列号

            > adb get-serialno

        获取 MAC 地址

            > adb shell  cat /sys/class/net/wlan0/address

        查看设备型号

            > adb shell getprop ro.product.model

        查看 Android 系统版本

            > adb shell getprop ro.build.version.release

        查看屏幕分辨率

            > adb shell wm size

        查看屏幕密度

            > adb shell wm density

        Monkey日志保存到PC中:

            > adb shell monkey [option] <count> >d:monkey.txt

        Monkey日志保存到手机:

            > adb shell

            >monkey [option] <count> > /mnt/sdcard/monkey.txt

        Monkey日志标注流与错误流分开保存:

            > monkey [option] <count> 1>/sdcard/monkey.txt 2>/sdcard/error.txt

        上传脚本和jar包到手机:

            > adb push Monkey.jar /data

            > adb push monkey /data

            > adb shell chmod777 /data/monkey

  • 相关阅读:
    Notes of Daily Scrum Meeting(12.18)
    Notes of Daily Scrum Meeting(12.17)
    Notes of Daily Scrum Meeting(12.16)
    Notes of Daily Scrum Meeting(12.8)
    Notes of Daily Scrum Meeting(12.5)
    Notes of Daily Scrum Meeting(12.3)
    Notes of Daily Scrum Meeting(11.12)
    Linux中profile、bashrc、bash_profile之间的区别和联系
    Linux GCC编译
    mysql 5.7.16 远程连接
  • 原文地址:https://www.cnblogs.com/medivhxu/p/6856791.html
Copyright © 2011-2022 走看看