adb shell

  1. 描述:截取当前屏幕
    语法:screencap [-p] <filename>
    [-p]:以png格式存储文件
    示例:screencap -p /data/screen.png  #截取当前屏幕保存成screen.png
  1. 描述:input命令 实现输入,单击,拖动,按键等事件
    1) 发送文本

    语法:input text <string>
    <string>:文本内容
    示例:input text "www.xyaz.cn"  #模拟输入 (不支持中文)  

    2) 按键

    语法:input keyevent [--longpress] <键值>
    [--longpress]:长按
    示例:input keyevent 3  #模拟点击Home键

    3) 点击

    语法:input tap <x> <y>
    <x> <y>:坐标
    示例:input tap 500 200  #模拟点击坐标(500, 200)的点

    4) 划动

    语法:input swipe <x1> <y1> <x2> <y2> [duration(ms)]
    <x1> <y1>:起点坐标
    <x2> <y2>:终点坐标
    [duration]:持续时间
    示例:input swipe 200 200 300 300  #模拟滑动 从起点坐标(200, 200)划动到终点(300, 300)
    
  2. 描述:查看系统服务信息

    • 语法:dumpsys [system service]
    • 示例1:dumpsys meminfo #查询内存情况
    • 示例2:dumpsys cpuinfo #查询CPU情况
    • 示例3:dumpsys gfxinfo #查询帧率情况
    • 示例4:dumpsys display #查询显示情况
    • 示例5:dumpsys power #查询电源情况
    • 示例6:dumpsys batterystats #查询电池情况
    • 示例7:dumpsys activity #查询AMS服务相关信息
    • 示例8:dumpsys window #查询WMS服务相关信息
    • 示例9:dumpsys activity #查看全部任务栈信息
    • 示例10:dumpsys activity | grep 'mResumedActivity' #查看运行中的任务栈
    • 示例11:dumpsys activity | grep 'mFocusedActivity' #查看顶栈任务栈
    • 示例12:dumpsys activity | grep 'top-activity' #查看最顶端top-activity
  3. 描述:activity manager 命令
    1) 启动应用

    语法:am start [-n] <packageactivity>
    [-n]:组件
    示例:am start -n com.android.settings/.Settings  #启动设置应用

    2) 退出应用

    语法:am force-stop <packagename>
    示例:am start -n com.android.settings  #退出设置应用
    
  4. 描述:package manager 命令
    1) 枚举包名

    语法:pm list packages [ -f | -d | -e | -s | -3 | -i ]
    [-f]:显示每个包的文件位置
    [-d]:只显示禁用的应用的包名
    [-e]:只显示可用的应用的包名
    [-s]:只显示系统应用的包名
    [-3]:只显示第三方应用的包名
    [-i]:查看应用的安装者
    示例:pm list packages  #枚举所有包

    2) 安装应用

    语法:pm install [-l] [-r] <apkfile>
    [-r]:重新安装应用,且保留应用数据
    [-l]:锁定应用程序
    示例:pm install /data/test.apk  #安装安卓内部apk

    3) 卸载应用

    语法:pm uninstall [-k] <packagename>
    [-k]:保留程序运行所产生的数据和缓存目录
    示例:pm uninstall com.android.settings  #卸载设置

    4) 清除应用缓存

    语法:pm clear <packagename>
    示例:pm clear com.android.settings  #清理设置应用的缓存

    5) 取应用的路径

    语法:pm path <packagename>
    示例:pm path com.android.settings  #取设置应用的路径

    6) 禁用应用

    语法:pm disable <packagename>
    示例:pm disable com.android.settings  #禁用设置应用
    备注:只有支持系统应用,第三方应用不支持

    7) 启用应用

    语法:pm enable <packagename>
    示例:pm enable com.android.settings  #启用设置应用

    8) 隐藏应用

    语法:pm hide <packagename>
    示例:pm hide com.android.settings  #隐藏设置应用

    9) 显示应用

    语法:pm unhide <packagename>
    示例:pm unhide com.android.settings  #显示设置应用
    
  5. 描述:获取指定key的配置值

    语法:getprop <key>

    • 示例1:getprop ro.product.manufacturer #取手机厂商
    • 示例2:getprop ro.product.model #取手机型号
    • 示例3:getprop dhcp.eth0.ipaddress #取IP地址
    • 示例4:getprop dhcp.eth0.mask #取子网掩码
    • 示例5:getprop dhcp.eth0.gateway #取网关
    • 示例6:getprop dhcp.eth0.dns1 #返回手机DNS1
    • 示例7:getprop dhcp.eth0.dns2 #返回手机DNS2
    • 示例8:getprop ro.sf.lcd_density #取DPI
    • 示例9:getprop ro.build.version.release #取安卓系统版本
    • 示例10:getprop persist.sys.country #取国家信息
    • 示例11:getprop persist.sys.language #取语言信息
  6. 描述:设置指定key的配置值
    语法:setprop <key> <value>

    • 示例1:setprop ro.product.manufacturer samsung #设置厂商
    • 示例2:setprop ro.product.model SM-A530F #设置手机型号
    • 示例3:setprop dhcp.eth0.ipaddress 10.0.2.15 #设置IP地址
    • 示例4:setprop dhcp.eth0.mask 255.255.255.0 #设置子网掩码
    • 示例5:setprop dhcp.eth0.gateway 10.0.2.2 #设置网关
    • 示例6:setprop dhcp.eth0.dns1 192.168.1.1 #设置手机DNS1
    • 示例7:setprop ro.sf.lcd_density 192 #设置DPI

API LEVEL

发送一条友善的评论