参考: Mac 环境下测试环境的安装与配置
adb( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试应用。
目录
参考: Mac 环境下测试环境的安装与配置
1、查看 adb 版本:
2、连接夜神模拟器:
3、查看设备信息:
4、用 adb 进入 Linux 系统的字符交互界面
5、使用 adb 在设备中安装 apk
6、查看设备上安装的所有包名:
7、卸载安装的apk
8、文件的读取和写入
9、屏幕截图操作
10、adb 服务的启动与关闭
11、adb 的其他命令操作:
1、查看 adb 版本:
adb version
2、连接夜神模拟器:
adb connect 127.0.0.1:62001
可以看到 adb 已和 模拟器连接成功,
出现红色框框中的原因是:adb的版本和安装的 Android SDK 的版本不一致所导致的
解决的方法:找到Android SDK包中的 adb 替换掉 模拟器包中存放的adb即可
注:Android SDK中的 adb 比较好找,找到安装包即可找到需要的 adb
夜神模拟器中的 adb 可以进行如下操作:
第一步:回到 Mac 电脑的桌面
第二步:点击 前往—>应用程序,找到夜神模拟器
第三步:右击,选择 显示包内容—>Contents—>MacOS—>adb ,就会看到了,直接用Android SDK 中的 adb 替换掉即可
3、查看设备信息:
adb devices
如果有多个设备的话,可以进行如下操作:
夜神模拟器的端口是规律的,第一个模拟器端口是62001,第二个模拟器端口是62025,第三个是62025+1,依此类推。
例:
adb connect 127.0.0.1:62001
adb connect 127.0.0.1:62025
再次查看设备信息的话,就会看到多个设备了
4、用 adb 进入 Linux 系统的字符交互界面
# 用 adb 进入 Linux 系统的字符交互界面
adb shell
# 进入到指定设备的 shell 界面
adb -s 127.0.0.1:端口号 shell
# 进入root界面后,输入 ls 命令可以查看到 Android 系统中的文件
# 退出shell
exit
进入 adb shell 后有两种状态显示:# 代表有root 权限 $代表没有root权限
5、使用 adb 在设备中安装 apk
# 默认安装
adb install 要安装的apk路径/weixin.apk
# 覆盖安装
adb install -r 要安装的apk路径/weixin.apk
# 指定设备安装
adb -s 127.0.0.1:端口号 install 要安装的apk路径/weixin.apk
例:
6、查看设备上安装的所有包名:
# 方法一:直接在 Terminal 中输入以下命令即可查看
adb shell pm list package
# 方法二:在 shell 界面进行查看具体包名
adb shell
pm list package | grep 'wandoujia'
7、卸载安装的apk
# 接上一步,看到包名后,直接在 Terminal 中输入下面命令进行卸载:
adb uninstall 包名
8、文件的读取和写入
8.1 将本机中的文件写入到设备
# 在 Terminal 中输入下命令,其实这一步和git中的 push 有些相似之处
adb push
8.2 将设备中的文件读取到本机中
# 在 Terminal 中输入以下命令,其实这一步也和git中的 pull 比较相似
adb pull
9、屏幕截图操作
# 在 Terminal 中输入以下命令进行截图操作
adb shell screencap /sdcard/图片名字.png
# 可以直接在shell界面查看截图的图片,也可以读取到本机进行查看
adb pull /sdcard/图片名字.png
10、adb 服务的启动与关闭
# adb 服务的启动
adb start-server
# adb 服务的关闭
adb kill-server
11、adb 的其他命令操作:
# 查看设备的 cpu 和 内存占用情况
adb shell top
# 查看占用内存前 N 的app应用(N 代表数字)
adb shell top -m N
# 查看进程列表
adb shell ps
# 查看所有的包名
adb shell pm list packages
# 查看某个包的具体信息
adb shell dumpsys package XXX
# 查看当前resume的是哪个activity
adb shell dumpsys activity | grep mFocusedActivity
# 查看当前正在运行的Activity
adb logcat | grep ActivityManager
# 查看当前正在运行的Activity
adb logcat | grep Displayed