Android调试桥(ADB)是一种命令行工具,可使高级用户和开发人员与Android设备进行交互。 ADB使开发人员能够在Android设备,访问系统文件,安装和删除应用程序上运行命令,并通过常规Android用户界面进行各种其他操作。
要使用ADB,您必须在计算机上安装Android SDK(软件开发套件)。 Android SDK包括ADB,以及其他debugging tools和Android开发所需的库。安装了SDK后,您可以通过打开命令提示符或终端窗口并导航到SDK中的平台工具目录。
。这里是前30个+ CI/CD Interview Questions 和答案,这将帮助您增强对面试的信心
设置ADB后,您可以在Android设备上运行各种命令。这是您应该注意的一些最方便的ADB命令:
adb devices
此命令显示ADB当前在计算机上检测到的每个连接设备的列表。
> adb devices
List of devices attached
emulator-5554 device
adb install [apk file]
通过此命令在您的设备上安装了APK文件(Android应用程序包)。
> adb install ./workspace/VodQaAdvancedAppium/apps/VodQA.apk
Performing Streamed Install
Success
adb uninstall [package name]
此命令从您的设备中删除了一个应用程序,其中包名称为应用程序包名称。
> adb uninstall com.vodqareactnative
Success
adb shell
在此命令的帮助下,您可以执行命令并获得对设备上的系统文件的直接访问。
> adb shell
generic_x86_64:/ $ ls
acct bin config data_mirror dev init.environ.rc metadata oem res sys vendor
adb_keys bugreports d debug_ramdisk etc linkerconfig mnt proc sdcard system
apex cache data default.prop init lost+found odm product storage system_ext
generic_x86_64:
adb pull [source] [destination]
在我们的综合教程中发现 agile interview questions 的基本提示和常见问题。有效地准备并在下一次敏捷面试。
此命令将文件或目录从设备传输到计算机,其目的地是计算机上的位置,将文件或目录复制到。来源是设备上的文件或目录。
> adb pull config .
config/: 0 files pulled, 0 skipped.
adb push [source] [destination]
此命令将文件或目录从您的计算机传输到目标设备,目标设备的位置是目标设备上的位置,而源是计算机上的文件或目录。
adb shell pm list packages
此命令列出了设备上的所有已安装软件包(应用程序)。
> adb shell pm list packages
package:com.android.cts.priv.ctsshim
package:com.android.internal.display.cutout.emulation.corner
package:com.android.internal.display.cutout.emulation.double
package:com.android.providers.telephony
package:com.android.dynsystem
package:com.android.theme.icon.pebble
package:com.android.providers.calendar
.......
adb shell pm clear [package name]
此命令清除应用程序的数据和缓存,其中包名称是您要清除的应用程序的包名称。
adb logcat
此命令显示设备的logcat输出,这可以帮助调试和故障排除。
adb reboot
此命令重新启动设备。
adb shell dumpsys
此命令在您的设备上显示了广泛的系统信息,包括电池状态,内存使用和过程信息。
adb shell dumpsys activity
此命令显示有关您设备上当前运行活动的信息。
adb shell dumpsys package [package name]
此命令显示有关特定软件包(APP)的详细信息,其中软件包名称是您要获取信息的应用程序名称。
adb shell dumpsys batterystats
此命令在您的设备上显示详细的电池使用统计信息。
adb shell dumpsys meminfo [package name]
此命令显示特定软件包(APP)的详细内存使用统计信息,其中软件包名称是您要获取信息的应用程序的包名称。
adb shell dumpsys connectivity
此命令显示有关设备网络连接的信息,包括当前网络类型和连接状态。
adb shell dumpsys surface
此命令显示有关设备上当前可见表面的详细信息。
adb shell dumpsys display
此命令显示有关设备显示的详细信息,包括当前显示模式和分辨率。
adb shell dumpsys cpuinfo
此命令在您的设备上显示详细的CPU使用统计信息。
adb shell dumpsys netstats
此命令在您的设备上显示详细的网络使用统计信息。
adb shell dumpsys window
在这里295+ Selenium Interview Questions 带有答案,可以帮助您增强对面试的信心。
此命令显示有关设备窗口管理器的详细信息,包括所有窗口的当前焦点和布局。
adb shell dumpsys input
此命令显示有关设备输入管理器的详细信息,包括所有输入设备和输入队列的当前状态。
adb shell dumpsys power
此命令显示有关设备电源管理器的详细信息,包括当前的电池电量,电源和尾锁统计。
adb shell dumpsys battery
此命令显示有关设备电池的详细信息,包括当前电池电量,电压和温度。
adb shell dumpsys batterystats --reset
此命令重置设备上的电池使用统计信息。
adb shell dumpsys meminfo -a [package name]
此命令显示特定软件包(APP)所有进程的详细内存使用统计信息,其中软件包名称是您要获取信息的应用程序名称。
adb shell dumpsys gfxinfo [package name]
此命令显示特定软件包(APP)的详细图形性能统计信息,其中软件包名称是您要获取信息的应用程序的包名称。
adb shell dumpsys input [input device id]
此命令显示有关特定输入设备的详细信息,其中输入设备ID是要获取有关的输入设备的ID。
adb shell dumpsys surface [window name]
此命令显示有关特定窗口的详细信息,其中窗口名称是您要获取信息的窗口的名称。
adb shell screencap [filename]
此命令截图设备并将其保存到计算机上的指定文件名。
adb shell screenrecord [filename]
此命令记录设备的屏幕并将其保存到计算机上的指定文件名。
adb shell input [event]
此命令将输入事件发送到设备,该事件可以是各种操作,例如键按,触摸事件等。
adb shell monkey [options] [package name]
硒 WebdriverIO 是基于JavaScript的测试自动化框架,建立在Nodejs上。通过本指南了解如何使用WebDriverio执行Web自动化测试。
此命令在指定的软件包(APP)上运行随机应力测试,其中可以使用选项来指定要生成的事件的数量,并且软件包名称是您要在上面运行测试的应用程序的软件包名称。
adb shell am [start|instrument] [options] [package/activity]
此命令启动活动或在指定的软件包(APP)上运行仪器,可以使用选项来指定其他参数,例如目标软件包,组件和数据以及软件包/活动是您要启动或运行仪器的软件包名称或活动名称。
adb shell dumpsys activity [activity name]
此命令显示有关特定活动的详细信息,包括其状态,意图等。
adb shell dumpsys batterystats --charged
此命令显示设备充满电时的电池统计信息。
adb shell netcfg
此命令在设备上显示当前网络配置。
adb shell top
此命令在设备上显示当前的CPU用法和过程统计信息。
> adb shell top
Tasks: 245 total, 1 running, 244 sleeping, 0 stopped, 0 zombie
Mem: 2028168K total, 1668304K used, 359864K free, 33271808 buffers
Swap: 1521120K total, 0 used, 1521120K free, 921464K cached
400%cpu 0%user 0%nice 7%sys 393%idle 0%iow 0%irq 0%sirq 0%host
PID USER PR NI VIRT RES SHR S[%CPU] %MEM TIME+ ARGS
3305 shell 20 0 10G 4.4M 3.6M R 11.1 0.2 0:00.02 top
313 bluetooth 20 0 10G 6.2M 5.1M S 7.4 0.3 88:39.49 android.hardwa+
.......
adb shell ps
此命令在设备上显示当前正在运行的进程。
adb shell cat [file path]
此命令在设备上显示文件的内容,其中文件路径是要查看的文件的路径。
adb shell ls [directory path]
此命令在设备上显示目录的内容,其中目录路径是要查看目录的路径。
adb shell df
此命令在设备上显示当前磁盘使用统计信息。
adb shell ifconfig
此命令在设备上显示当前IP配置。
adb shell wm
此命令允许您与设备的窗口管理器进行交互。您可以使用它显示/隐藏状态栏,更改DPI等。
adb shell dumpsys activity services [package name]
此命令显示有关在特定软件包(APP)中运行的服务的详细信息,其中软件包名称是您想要获取信息的应用程序名称。
adb shell dumpsys activity broadcasts
此命令显示有关设备上广播接收器的详细信息。
adb logcat -d | grep -i "FATAL"
使用该命令中的logcat命令显示设备的日志输出,然后将输出流传输到GREP程序,该命令将输出搜索包含“致命”一词的线路。通过这样做,将显示存储在logcat中的所有崩溃日志。
在此博客中,有关 mobile app automation testing 工具,我们列出了具有优势和业务友好功能的最佳11个移动自动化测试工具。
adb logcat -d -s :F
此命令获取特定应用程序的崩溃日志,可以帮助调试和故障排除。
adb shell dumpsys activity | grep -i 'http|https'
使用dumpsys活动命令,此命令显示了活动经理的状态。然后将输出输送到GREP命令,该命令搜索包含术语http或https的行的输出。
adb shell dumpsys package | grep -i 'permission'
此命令使用dumpsys软件包命令显示有关指定软件包(APP)的信息,其中package_name是您要获取信息的应用程序的软件包名称,然后将输出输出到GREP命令,该命令过滤了包含单词许可的行的输出。这将显示该应用当前使用的所有权限。
这些命令允许您以各种方式与设备进行交互并检索有价值的信息,例如当前正在运行的过程,网络配置,磁盘使用等,同时执行移动应用程序自动化测试。
但是,如果您正在像Lambdatest这样的real device cloud上执行移动应用自动化测试,则可以利用一组可以通过JavaScript执行者在应用程序自动化测试脚本中执行的ADB命令。
要在LambDatest的真实设备云上执行ADB命令,您需要将以下命令与指定的参数一起使用。请注意,可用ADB命令的数量可能受到限制。
Map<String, Object> params = new HashMap<>();
params.put("command", "input-swipe");
params.put("startX", 200);
params.put("startY", 900);
params.put("endX", 200);
params.put("endY", 300);
// command to generate a swipe gesture
Object result = driver.executeScript("lambda-adb", params);
希望通过JavaScript执行者运行应用程序测试自动化脚本?前往我们的documentation on ADB commands开始在Lambdatest平台上开始。
除了支持ADB命令外,LambDatest还提供了一系列其他移动测试功能,包括在真实设备上的自动测试,设备日志和视频记录等等。
简而言之,确保应用程序在向用户发布之前没有错误是至关重要的,而调试是开发人员,工程师和测试人员的关键部分。调试是对测试的补充,这有助于确定程序中错误的发生方式。为了简化测试人员的调试过程,统一的数字测试云Lambdatest发布了一个名为LT Debug的新扩展名。使用此工具,测试人员可以更有效地进行调试,并减少麻烦。
iOS emulator by lambdatest允许您无缝测试网站和WebApp,并在最新的传统设备,OS版本和浏览器上进行WebApp。您还可以在200多个设备和iOS环境上在线测试iOS应用程序。免费注册。
结论
总而言之,掌握ADB命令可以大大增强您使用Android设备的能力,无论您是开发人员,测试人员还是电源用户。使用ADB,您可以以各种方式与设备进行交互并检索有价值的信息,例如当前运行的过程,网络配置,磁盘使用情况等。
在本文中,我介绍了与Android设备合作至关重要的各种ADB命令。我还为每个命令提供了示例和解释,以帮助您更好地了解它们的工作方式以及如何有效使用它们。
请记住,ADB命令可以是强大的工具,因此请谨慎使用它们,并确保您在对设备进行任何更改之前都知道要做什么。凭借练习和耐心,您可以成为ADB的大师并解锁Android设备的全部潜力。