常用 ADB 命令

ADB 的全称是 Android Debug Bridge,中文翻译为 Android 调试桥。顾名思义,主要用于 PC 端和 Android 设备调试连接的作用。从最早的 Eclipse 到现在的 Android Studio,其实底层和 Android 设备的链接,都是依赖的 ADB 实现的。

Mac 配置环境变量

打开终端,在当前用户目录下输入 touch .bash_profile 回车,再输入 open -e .bash_profile,在弹出的文件编辑页面中输入:

export ANDROID_HOME=/Users/username/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools

保存并关闭文件,关闭终端,重新打开终端,输入“adb” 进行验证。

如果安装了 oh-my-zsh,可能还是无法使用 adb 命令,这是因为 bash shell 以及 zsh shell 读取的是两种系统环境变量(使用 adb 的前提是你肯定已经在 bash 的 .bash_profile 配置了相关 android tool 的环境变量了,从而才能使用 adb 命令),然而在使用 zsh shell 的时候,你并没有把相关的环境变量的配置设置到 .zshrc 中(功能上类似 bash 的 .bash_profile)。既然是 .zshrc 没有配置相关环境变量设置,把 bash 中 .bash_profile 全部环境变量加入就好了,具体操作如下:

打开终端在当前用户目录下输入命令:open .zshrc,在打开的文件中找到 #User configuration 部分,添加 source ~/.bash_profile,关闭并保存文件,最后执行命令 source .zshrc 即可。

常用命令

1、查看当前连接设备

可以通过 adb devices 命令,查看当前已经连接的设备,包括模拟器、通过 USB 或 无线 连接的设备。

2、关闭和启动服务

  • 启动服务:adb start-server
  • 关闭服务:adb kill-server

正常来说,ADB 的服务,在连上设备的时候,就是一直在后台保持运行的。但是偶尔会出现一些其他的软件争抢权限的问题。通常来说,把 ADB 的服务杀掉重新启动,大部分问题都可以得到解决。

3、安装应用

通常用 adb install [apk路径] 就可以把 APK 安装到设备上,但是有时候会有一些安装的 APK 版本号的限制,例如没法从低版本覆盖安装设备上高版本的情况。这个时候可以添加 -r 参数,即可完成强制覆盖安装。

如果遇到 Failure [INSTALL_FAILED_TEST_ONLY] 错误,是因为 Android Studio 3.0 会在 debug apk 的 manifest 文件 application 标签里自动添加 android:testOnly="true"属性。可以添加 -t 参数,即可完成安装。

4、卸载应用

卸载应用的命令是 adb uninstall [需要卸载的APK的包名]

5、上传文件到设备

可以通过 adb push <电脑文件路径> <设备目标路径> 命令,将电脑上的文件,上传到手机中,如果不需要重命名,最后指向目录即可,如果需要重命名,跟在目录后面即可,符合Linux命令的风格。

6、下载文件到电脑

可以通过 adb pull <设备文件路径> [电脑目标路径] 命令,将手机上的文件,下载到电脑上。可以指定目录和文件名,如果不指定,会把文件下载到当前的用户目录下。

7、进入 shell 环境

通过 adb shell 命令进入 shell 环境。Android 底层本身也是 Linux 系统,同样有自己的 shell 环境,通常可以执行一些常用的 Linux 命令。

8、通过 ip 连接设备

可以通过 IP 连接设备。端口号默认是 5555,只要没有修改,这里可以不需要填写端口号。命令为:adb connect <ip 地址> [端口号]

9、断开通过 ip 连接的设备

通过 adb disconnect 断开的连接,只能是通过 IP 进行连接的设备,通过 USB 连接的设备,不会被 disconnect 命令断开。

10、查看帮助文档

adb help

同时操作多个设备

一般的命令仅适用于操作单个设备的情况。如果同时连接多个设备,可以通过 -s 参数来区分设备进行操作。

调试命令

1、进入应用信息页,查看当前应用的权限,设置,占用空间等。

adb shell am start -a android.settings.APPLICATION_DETAILS_SETTINGS -d package:<PACKAGENAME>

-a 是指定 ACTION 的参数,还有其他参数可以指定,如:DATA_URI、CATEGORY、COMPONENT、FLAG 等,可以在输入 adb shell am start 后,按 Tab 键查看提示。

2、清理应用数据

adb shell pm clear <PACKAGENAME>

3、启动某个已安装的App

adb shell am start -n <PACKAGENAME>/<.ACTIVITY>

-n 是指定 COMPONENT 的参数。

4、查看进程信息

adb shell ps [| grep 关键字]

5、查看设备上安装的所有 App 的包名

adb shell pm list package [-f]

不加 -f 参数,只会列出应用的包名;加上 -f 参数,会打印出 apk 的安装目录,可以根据该路径导出 Apk 文件。

6、查看磁盘空间情况

adb shell df

7、获取手机系统版本号

adb shell getprop ro.build.version.release

8、截屏

adb shell screencap <存储路径>

9、录屏

adb shell screenrecord <存储路径>

10、获取设备 ID

adb shell getprop ro.serialno

11、屏幕分辨率/像素密度

➜  ~ adb shell wm size
Physical size: 1080x2340
➜  ~ adb shell wm density
Physical density: 440

12、IP 地址

adb shell ifconfig

13、内存信息

adb shell cat /proc/meminfo

14、查看当前正在运行的 Activity/Service 的所有信息

adb shell dumpsys activity [services]

15、重启手机

adb reboot

16、使用 Monkey 进行压力测试

adb shell monkey [-p ALLOWED_PACKAGE] -v <COUNT>

参考

https://blog.csdn.net/plokmju88/article/details/55854753

发布日期:
分类:开发 标签:

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注