adb+shell+入门_adb shell 入门

一、ADB 简介

ADB(Android Debug Bridge) 是 Android 开发/测试人员不可替代的通用命令行工具,其允许与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试应用,并提供对 Unix shell(可用来在模拟器或连接的设备上运行各种命令)的访问。Android 系统是基于 Linux 内核的,所以 Linux 里的很多命令在 Android 里也有相同或类似的实现,在 adb shell 里可以调用。该工具是一个客户端-服务器程序。

客户端:客户端在开发计算机上运行。您可以通过发出 adb 命令从命令行终端调用客户端。

后台程序:后台程序在每个模拟器或设备实例上作为后台进程运行。http://www.daiqiyang.com

服务器:服务器在开发计算机上作为后台进程运行。

二、安装:网上下载adb解压到自定义路径后,配置环境变量即可。

三、连接:

ADB与本地 TCP 端口 5037 绑定,并侦听从 adb 客户端发送的命令(所有 adb 客户端均使用端口 5037 与 adb 服务器通信)。

连接 Android 模拟器

夜神模拟器:adb connect 127.0.0.1:62001

2.USB 连接 Android 设备

a. 打开开发者选项

Settings >About phone>连续点击 Build number

b. 开启 USB debugging

c .Dos 下输入adb devices验证手机是否连上 adb

3.手机和电脑连入同一局域网 adb connect ip

四、常用命令

1、安装应用

(1)adb install D:\adbtest\baidu.apk 文件名中不要有空格

(2)adb push D:\adbtest\baidu.apk /system/app

会将原来系统中的对应的apk覆盖掉

可用 adb pull /system/app/baidu.apk /home/ 备份

有时候会出现Read-only的错误,我们可以使用强制安装命令来安装apk

adb install -r D:\adbtest\baidu.apk

2、卸载

adb uninstall com.baidu.browser.apps

3、导入/导出 文件到手机中

adb pull remote local

adb push local remote

4、包管理命令pm

adb shell pm list packages -3 查看第三方安装包

根据包名,查看apk 安装路径

adb shell pm path com.baidu.browser.apps 包名

清除app 数据

adb shell pm clear com.baidu.browser.apps 包名

5、dumpsys查询系统服务转储到屏幕:

查看所有activity

adb shell dumpsys activity activities、

获取当前运行的Activity

adb shell dumpsys activity | findstr Run

6、查看系统进程

adb shell top

adb shell ps

Ps 只提供当前进程的快照。top即时查看最活跃的进程

7、抓取日志adb logcat

adb logcat -v time :E >D:\test.log 抓取日志并输出到制定路径

adb logcat ActivityManager:i:s

查看activity日志,仅输出标记为“ActivityManager”并且优先级大于等于“Info”的日志,*:S用于设置所有标记的日志优先级为S,这样可以确保仅输出符合条件的日志。

只显示需要的输出(白名单),通过管道使用 grep 过滤。

参考资料(https://www.cnblogs.com/bydzhangxiaowei/p/8168598.html)

8、adb shell monkey 压力测试

参考资料(https://www.cnblogs.com/yindada/p/9845032.html)

adb shell monkey -p com.baidu.browser.apps -v 1000 >d:\adbtest\monkey_test.txt

-p ,此命令用于指定包,若不指定则在整个系统中执行

-v ,用于反馈日志的详细程度级别

Level 0 : adb shell monkey -p 包名 -v 10 // 默认级别,仅提供启动、测试完成和最终结果等少量信息

Level 1 : adb shell monkey -p 包名 -v -v 10 // 提供较为详细的日志,包括每个发送到Activity的事件信息

Level 2 : adb shell monkey -p 包名 -v -v -v 10 // 提供最详细的日志,包括了测试中选中/未选中的Activity信息

1.程序无响应:ANR问题:在日志中搜索“ANR”

2.崩溃问题:在日志中搜索“CRASH”

3.其他问题:在日志中搜索”Exception”

9、模拟用户操作

点击事件

adb shell input keyevent

滑动

adb shell input swipe 300 1000 300 500

文本输入

adb shell input text hello,world

10、截屏、录像:

adb shell screencap /system/test.png文件保存路径

adb shell screenrecord 文件保存路径

Android adb调试时,经常会遇到权限问题(failed for /system/lib/libmm-test.so, Read-only file system),即使Root设备,在向/system等系统文件夹操作时(比如push、rm等),依然可能会提示“Read-only file system”。adb remount 重新挂载系统分区,使系统分区重新可写或着重启 (http://www.metsky.com/archives/670.html)

screenrecord 部分参数

--size width x height 设置分辨率 eg:1280x720

--bit-rate rate 视频比特率,默认值为 4Mbps,可以设6Mbps,这样质量更好 eg:adb shell screenrecord --bit-rate 6000000 /system/demo.mp4

--time-limit time 设置最大录制时长(以秒为单位)。默认值和最大值均为 180(3 分钟)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值