当前位置:   article > 正文

adb环境配置与常用命令_adb配置

adb配置

注意:

adb命令操作过程中,无论是操作本地路径,还是远程设备路径,无论是本地文件,还是远程文件,都尽可能不要出现中文字符,否则,会有意想不到的异常出现。切记!切记!!切记!!!

adb命令环境配置
adb所在的路径
在这里插入图片描述

在这里插入图片描述
通过cmd命令提示窗口安装apk的命令:

Administrator>adb install -r D:\GoogleDownload\globsport_123123_1.2.0_0121010001.apk
  • 1

在这里插入图片描述
aapt命令环境变量配置:
在这里插入图片描述

1、通过cmd命令提示窗口查看apk的信息的命令:

	aapt dump badging D:\GoogleDownload\globsport_123123_1.2.0_0121010001.apk
  • 1

在这里插入图片描述

2、查看当前 adb 工具的版本信息以及安装路径信息的命令:

adb version
  • 1

运行结果:
在这里插入图片描述

3、启动adb服务的命令:

adb start-server
  • 1

运行结果:
在这里插入图片描述

4、停止/关闭adb服务的命令:

adb kill-server
  • 1

该命令执行完毕后,没有信息输出,在Linux系统或者Windows系统的cmd中,没有信息输出就是成功的提现。

5-1、查看当前计算机连接的设备的命令,已连接的设备会显示出来:

adb devices
  • 1

在这里插入图片描述

5-2、获取Android设备的序列号

adb get-serialno
  • 1

在这里插入图片描述

5-3、查看Android 设备的系统版本

adb shell getprop ro.build.version.release
  • 1

在这里插入图片描述

6-1、显示设备安装的所有应用的包名:

adb shell pm list packages
  • 1

在这里插入图片描述

另外:

命令:  adb shell pm list packages –s  用于查询系统应用包名
  • 1
命令:  adb shell pm list packages -3 用于查询系统中的第三方应用包名
  • 1

6-2、获取设备中所有应用的包信息Package Information

adb shell dumpsys package
  • 1

执行该命令之后,输出的信息量太大,这里就不展示截图了。

7、通过adb安装apk应用的命令:

adb install "本地apk的文件路径"
  • 1

安装成功后,会提示 “Success”
在这里插入图片描述
在这里,本地的apk的文件路径是:“ D:\Test\Telegram.apk ”

8-1、通过adb卸载 Android客户端的apk应用的命令:

adb install "要卸载的Android客户端 apk的 包名"
  • 1

卸载成功后,会提示 “Success”
在这里插入图片描述
在这里,要卸载的Android客户端 apk的 包名 path 是:“com.mydemo.toolslist”

8-2、清除 指定包名应用 的数据与缓存

adb shell pm clear <应用包名>
  • 1

清理成功之后,会提示“Success”。
在这里插入图片描述

9、用adb命令将计算机 / 本地的文件或者文件夹push到手机的命令:

	adb push < 本地文件路径 > < 手机端存储路径 >
  • 1

在这里插入图片描述
上面示例中,“/storage/emulated/0/”:手机存储空间根目录的意思 在这里插入图片描述

注意:

adb命令操作过程中,无论是操作本地路径,还是远程设备路径,无论是本地文件,还是远程文件,都尽可能不要出现中文字符,否则,会有意想不到的异常出现。切记!切记!!切记!!!

10-1、把设备(手机)的文件或文件夹复制到本地

adb pull <手机端文件/文件夹存储路径> <本地文件保存路径>
  • 1

在这里插入图片描述
上面命令作用就是:将路径 “手机根目录/Huawei/MagazineUnlock” 文件夹下的名为“copy.jpg”的图片文件拉取/复制到本地,结果如下:
在这里插入图片描述

10-2、然后我们再来看看从手机端复制文件夹到本地的命令操作:

在这里插入图片描述
结果如下:
在这里插入图片描述

11-1、Android设备日志抓取命令

抓取日志的步骤:先输入命令启动日志,然后操作 App,复现 bug,再 ctrl+c 停止日志,分析本地保存的文件

adb logcat -v time > <日志在本地的保存路径\日志在本地的名字>
  • 1

在这里插入图片描述
执行结果如下:
在这里插入图片描述

要停止日志抓取保存的命令:Ctrl+C

11-2、抓取执行命令时往前 10 分钟左右的日志信息

此命令,不需要按 Ctrl+C 来停止,会自动化停止 Log 打印,并将日志文件保存在本地。

adb bugreport > <日志在本地的保存路径\日志在本地的名字>
  • 1

在这里插入图片描述

需要说明的是:该命令输出的日志里面,保存的并不是真正的日志,而是日志保存在本地的一个“路径”:

在这里插入图片描述
如上图中,真正的日志是保存在路径“C:\Users\HUAWEI”下的一个名为 “bugreport-FRD-AL00-HUAWEIFRD-AL00-2023-02-18-18-09-20.zip”的文件里面,比较大:
在这里插入图片描述

11-3、查看当前设备当下的日志

adb logcat
  • 1

执行该命令之后,界面会持续输出大量的日志信息,注意:是持续的输出,不会停止。如果是想要停止的话,就按“Ctrl + C”快捷键,执行退出命令的操作。

11-4、按级别过滤日志输出

adb logcat [<option>] ... [<filter-spec>] ...
  • 1

按某级别过滤日志则会将该级别及以上的日志输出,Android 日志的优先级如下:

V —— Verbose(最低,输出得最多)
D —— Debug
I —— Info
W —— Warning
E —— Error
F —— Fatal
S —— Silent(最高,啥也不输出)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

例如,输出F级及以上的日志:

adb logcat *:F
  • 1

在这里插入图片描述

11-5、按 tag 和级别过滤日志

我们还可以按 tag 和级别过滤日志:
上面的“11-4”示例中的 参数可以由多个 [:priority] 组成:

输出 tag ActivityManager 的 I 以上级别日志,输出tag MyApp的D 以上级别日志,及其它 tag 的 S 级别日志(即屏蔽其它 tag 日志)。

adb logcat ActivityManager:W MyApp:I *:F
  • 1

在这里插入图片描述

11-6、指定日志格式

命令:

adb logcat -v <format>
  • 1

示例:

adb logcat -v <format>  指定日志输出格式
adb logcat -v brief   #默认格式,<priority>/<tag>(<pid>): <message>
adb logcat -v process #<priority>(<pid>) <message>
adb logcat -v tag  #<priority>/<tag>: <message>
adb logcat -v raw  #<message>
adb logcat -v time  #<datetime> <priority>/<tag>(<pid>): <message>
adb logcat -v threadtime #<datetime> <pid> <tid> <priority> <tag>: <message>
adb logcat -v long  #[ <datetime> <pid>:<tid> <priority>/<tag>:] <message>
adb logcat -v long ActivityManager:I *:S  #指定格式可与上面的过滤同时使用
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

11-7、清除log 缓存

adb logcat -c
  • 1

执行完该命令之后,本地的日志信息会被清空。

#-

以下命令使用频率相对较低:

-

12、查询Android设备的型号的命令:

adb shell getprop ro.product.model
  • 1

运行结果如下:
在这里插入图片描述

13、获取设备屏幕分辨率的命令:

adb shell wm size
  • 1

在这里插入图片描述

14、无法直接操作Android设备,进行屏幕截图,可以通过adb命令来实现:

adb shell screencap -p /sdcard/mms.png
adb shell screencap -p /storage/emulated/0/mms2.png
  • 1
  • 2

在这里插入图片描述

15、查看应用程序的任务栈Task信息的命令:

第一步、在cmd命令窗口中,将路径切换到adb.exe执行文件所在的磁盘,比如我的adb.exe执行文件所在的磁盘是D盘,那么执行命令:

cd->enter回车->D:->enter回车->cd D:\ProgramFiles\AndroidSDK\platform-tools->enter回
  • 1

在这里插入图片描述
然后执行命令:

adb shell dumpsys activity activities -p com.leo.amsflag.activity > D:\Activitys.txt
  • 1

说明:
com.demo.amsflag:package包名;
D:\Activitys.txt:栈信息输出后保存的目录和名称、格式。

16、查询Android设备的内存使用情况的命令

adb shell dumpsys meminfo
  • 1

在这里插入图片描述
该命令输出的信息同样巨大,上面截图只是其中的一小部分。

17、强制停止应用

adb shell am force-stop <要停止的应用的包名>
  • 1

如:

adb shell am force-stop com.mydemo.toolslist
  • 1

执行该命令之后,应用会立即被杀死,但是后台任务栈中,还存有该应用的任务,点击它,会重新启动该应用。

18、执重启Android设备

adb reboot
  • 1

在执行完该命令之后,设备会立即重启

19、查看占用内存前10 的app

adb shell top -s 10
  • 1

在这里插入图片描述

20、连接指定设备

该命令我们这里分两步执行,一是获取当前连接的Android设备,二是连接指定设备。

1、获取当前连接的Android设备的操作简单,执行命令adb devices即可:

在这里插入图片描述

2、连接指定设备adb -s <相应serialNumber序列 号的设备>
adb -s <相应serialNumber序列 号的设备>
  • 1

在这里插入图片描述
其实该命令的完整形态是:

adb [-d|-e|-s <serialNumber>] <command>
  • 1

其中:

参数:
-d 指定当前唯一通过USB 连接的Android 设备为命令目标
-e 指定当前唯一运行的模拟器为命令目标
-s <serialNumber> 指定相应serialNumber 号的设备/模拟器为命令目标
command 为所需对设备执行的命令
  • 1
  • 2
  • 3
  • 4
  • 5

21、电池状况

adb shell dumpsys battery
  • 1

在这里插入图片描述

22、查看设备

adb version #设备版本
adb get-state #查看设备状态 device(正常连接),offline(连接异常),unknown(没有连接)
adb get-serialno #获取序列号
adb get-devpath #获取设备路径
adb shell cat /system/build.prop #获取设备名称

23、操作多个设备

adb —a 监听所有网络接口,而不仅仅是localhost
-d 使用USB设备(如果多个设备连接错误)
-e 使用TCP / IP设备(如果可用多个TCP / IP设备错误)
-s 使用给定的序列号(覆盖ANDROID_SERIAL)
-t 使用给定设备ID
-h adb服务器主机名称(默认= localhost)
-p adb服务器的端口(默认= 5037)
-l 监听来自套接字的adb服务器(默认= tcp: localhost: 5037)
例如:adb -s 127.0.0.1:62001 shell

24、关机与重启

adb reboot #设备重启
adb shutdown #设备关机

25、刷机模式

db reboot bootloader #重启到bootloader,即刷机模式
adb reboot recovery #重启到recovery,即恢复模式
adb sideload <path-to-update.zip> #更新系统

26、查看应用

adb shell pm list packages #所有应用
adb shell pm list package -f #
adb shell pm list packages -s #系统应用
adb shell pm list packages -3 #三方应用
adb shell pm list packages | findstr bluetooth #过滤应用 管道符进行搜索,Linux下使用grep

27、查看应用的activity信息

adb shell dumpsys package com.android.bluetooth #查看系统应用蓝牙的包名信息
adb shell dumpsys activity activities #查看所有的活动程序包名
adb shell dumpsys activity | findstr mFocusedActivity #查看当前重启的是哪个包
adb shell dumpsys activity top | findstr activity #查找设备活动程序的父窗口

28、清除应用数据和缓存

adb shell pm clear packagename

29、日志

adb logcat#查看日志
adb logcat -v time #打印详情日志,会记录当前的所有操作行为以及产生的结果,默认持续监听,按下Ctrl+c即可结束
adb logcat -v time >D:\log.txt #保存日志到电脑
adb logcat -f /sdcard/1.txt #保存日志到手机
adb logcat | findstr com.android.bluetooth #保存指定包名的日志
adb logcat -c #清除之前的日志输出
adb logcat | findstr ActivityManager #查看当前正在运行的Activity
adb logcat | findstr Displayed #查看当前正在运行的Activity
adb bugreport #查看bug报告
adb logcat -b radio #无线通讯的日志
adb shell dmesg #内核日志

30、截屏录屏

adb shell screencap /sdcard/1.png #当前窗口截屏保存到手机
adb shell /system/bin/screencap -p /sdcard/2.png
adb exec-out screencap -p >1.png #截图保存到电脑
adb shell screenrecord >1.mp4 #屏幕录像,Ctrl+c停止录制
–size #视频大小
–bit-rate #比特率
–time-limit #持续时间
–verbose #命令行显示log信息
注:模拟器和安卓4.4以下版本不支持录屏

31、设备相关信

adb shell getprop ro.build.version.release #安卓系统版本
adb shell getprop ro.product.model #查看设备型号
adb shell cat /sys/class/net/wlan0/address #查看MAC地址
adb shell wm size #设备屏幕分辨率
adb shell wm size 400X654 #设置屏幕分辨率
adb shell wm size reset #恢复原屏幕分辨率
adb shell wm density #设备屏幕密度
adb shell wm density 100 #修改屏幕密度为100dpi
adb shell wm density reset #恢复原屏幕密度
adb shell wm overscan 10,20,30,100 #显示区域
adb shell wm overscan reset #恢复原显示区域
adb shell dumpsys window displays #显示屏参数
adb shell service list #查看后台services信息
adb shell settings put global adb_enabled 0 #关闭 USB 调试模式
adb shell uiautomator dump #获取当前界面的控件信息
adb shell ime list -s #设备上的输入法

32、进程

adb shell ps #查看手机正在运行的进程 adb shell ps | findstr bluetooth
adb shell ps -x pid #查看指定pid的进程状态信息
adb shell kill pid #根据进程号杀进程
adb shell procrank #杀进程
adb shell start adbd #启动守护进程
adb shell stop adbd #关闭守护进程

33、性能分析

adb shell cat /proc/cpuinfo #获取CPU序列号
adb shell cat /proc/meminfo #查看当前内存占用
adb shell cat /proc/iomem #查看IO内存分区
adb remount #将system分区重新挂载为可读写分区
adb shell dumpsys meminfo bluetooth #查看蓝牙占用的内存
adb shell dumpsys cpuinfo | findstr bluetooth #获取CPU
adb shell top #查看实时资源占用情况
adb shell top -n 1 | findstr bluetooth #刷新一次内存信息,然后返回蓝牙内存占用
adb shell top #查看设备cpu和内存占用情况
adb shell top -m 6 #查看占用内存前6的app
adb shell dumpsys gfxinfo bluetooth #获取流畅度相关
adb shell netcfg #查看设备的网络连接情况
adb shell ifconfig wlan0 #获取wlan0的IP地址和子网掩码

34、文件操作

adb shell ls #列出目录下的文件和文件夹
adb shell cd sys #切换当前目录为sys
adb shell rename 旧文件名 新文件名 #重命名文件名
adb shell rm /sys/1.apk #删除指定目录下的文件
adb shell rm -r #删除指定目录下的文件夹及其子目录
adb shell mv 旧文件名 新文件名 #移动文件
adb shell chmod 777 1.jpg #设置文件权限
adb shell mkdir 文件夹名 #新建文件夹
adb shell cat 文件 #查看文件内容
adb shell cat /data/misc/wifi/*.conf #查看WiFi密码

35、按键

adb shell input keyevent 3 # HOME 键
adb shell input keyevent 4 # 返回键
adb shell input keyevent 5 # 拨号
adb shell input keyevent 6 # 挂断
adb shell input keyevent 24 # 音量+
adb shell input keyevent 25 # 音量-
adb shell input keyevent 26 # 电源键
adb shell input keyevent 27 # 拍照
adb shell input keyevent 64 # 打开浏览器
adb shell input keyevent 82 # 菜单键
adb shell input keyevent 85 # 播放/暂停
adb shell input keyevent 86 # 停止播放
adb shell input keyevent 87 # 播放下一首
adb shell input keyevent 88 # 播放上一首
adb shell input keyevent 122 #移动光标到行首或列表顶部
adb shell input keyevent 123 #移动光标到行尾或列表底部
adb shell input keyevent 126 # 恢复播放
adb shell input keyevent 127 # 暂停播放
adb shell input keyevent 164 # 静音
adb shell input keyevent 176 # 打开系统设置
adb shell input keyevent 187 # 切换应用
adb shell input keyevent 207 # 打开联系人
adb shell input keyevent 208 # 打开日历
adb shell input keyevent 209 # 打开音乐
adb shell input keyevent 210 # 打开计算器
adb shell input keyevent 220 # 降低屏幕亮度
adb shell input keyevent 221 # 提高屏幕亮度
adb shell input keyevent 223 # 休眠
adb shell input keyevent 224 # 点亮屏幕
adb shell input keyevent 231 # 打开语音助手
adb shell input keyevent 276 # 如果没有 wakelock 则让系统休眠

36、点击、滑动屏幕

adb shell input tap 100 300 #在(100,300)处点击
adb shell input swipe 100 1200 100 200 #上滑
adb shell input swipe 100 200 100 1200 #下滑

37、输入

adb shell input text hello #输入hello

38、设备id

adb shell settings get secure android_id

39、无线网络

adb shell svc wifi enable #开启WiFi
adb shell svc wifi disable #关闭WiFi

40、以太网

获取root权限:
adb root
adb remount

adb shell ifconfig eth0 up 打开
adb shell ifconfig eth0 down 关闭

41、Activity管理器

adb shell am start -n activity路径 #启动某一个activity
adb shell am start -a android.intent.action.VIEW -d www.baidu.com#启动默认浏览器打开一个网页
adb shell am start -n com.android.camera/.Camera #启动相机
adb shell am start -a android.intent.action.CALL -d tel:10086#启动拨号10086
adb shell am startservice -n 服务 #开启服务
adb shell am stopservice 服务 #停止服务
adb shell am force-stop bluetooth #杀死蓝牙进程
adb shell am kill 进程号 #杀掉进程
adb shell am broadcast -a android.intent.action.BOOT_COMPLETED #向所有组件广播设备启动完毕

43、调用软件包管理器

adb shell pm list permissions #查看权限
adb shell pm list permission-groups #输出所有已知的权限组
adb shell pm list permissions -d -g -f #查看系统危险权限并按组输出所有信息
adb shell pm list instrumentation#列出所有测试软件包,-f列出测试软件包的APK文件
adb shell pm path com.android.bluetooth #查看软件安装路径
adb shell pm list features #输出系统的所有功能
adb shell pm list libraries #输出当前设备支持的所有库
adb shell pm list users #输出系统中的所有用户
adb shell pm enable ** #启用给定的软件包或组件(写为“package/class”)
adb shell pm disable ** #停用给定的软件包或组件(写为“package/class”)
adb shell pm get-max-users #输出设备支持的最大用户数

44、隐藏状态栏

adb shell settings put global policy_control immersive.status=*

45、隐藏虚拟按钮

adb shell settings put global policy_control immersive.navigation=*

46、全屏模式

adb shell settings put global policy_control immersive.full=*

47、恢复正常模式

adb shell settings put global policy_control null

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/504757
推荐阅读
相关标签
  

闽ICP备14008679号