adb shell中的am pm命令、常用命令总结

您所在的位置:网站首页 安卓shell打开软件 adb shell中的am pm命令、常用命令总结

adb shell中的am pm命令、常用命令总结

2024-01-24 04:30| 来源: 网络整理| 查看: 265

文章目录 一、adb shell中的am pm命令1.1 am命令start [options] :启动activity通过指定的intent参数。startservice [options] : 启动service通过指定的intent参数force-stop : 强制停止指定的package包应用。kill [options] :杀死指定package包应用进程kill-all :杀死所有的后台进程。broadcast [options] :发送一个intentinstrument [options] :测试命令profile start :在进程中运行profile,分析结果写到里。profile stop :停止profile。set-debug-app [options] :设置package包应用为debug模式。clear-debug-app :清空之前用set-debug-app命令设置的package包应用。monitorscreen-compatdisplay-sizedisplay-densityto-urito-intent-uri 1.2 pm命令 二、常用命令开启adb服务关闭adb服务2.1查询设备 adb devices -l2.2 将命令发送至特定设备 adb devices -s2.3 安装应用 adb install2.4 设置端口转发 adb forward2.5 将文件复制到设备push/从设备复制文件pull2.6 停止 adb 服务器 adb kill-server2.7 截取屏幕截图2.8 录制视频 更多命令获取包名和界面名使用adb更换apk用U盘更换apk 使用SecureCRT+U盘获取系统权限查看版本号【版本】查看APK版本查看APK内存占用强制停止某应用清除APK的数据及缓存【启动】通过命令启动APK通过IPTV拉起页面【包名】过滤包名关键字查看对应APK所在位置查看栈顶activity截屏录屏命令抓取网络包命令抓日志【安装】安装APK【卸载】卸载APK(仅卸载/data/app目录下安装的apk)强制删除某目录查询所有系统应用查询所有第三方应用启动adb服务停止adb服务adb连接设备(该设备需开启adb)adb断开所有已连接设备查看当前连接的设备IP地址adb获取root权限adb挂载设备adb进入shell模式adb重启已连接的设备adb安装应用adb卸载应用(仅卸载/data/app目录下安装的apk)adb导出已连接设备中某目录的文件到本地PCadb将本地PC的文件直接导入到已连接设备某目录查看内存

一、adb shell中的am pm命令 1.1 am命令

am全称activity manager,你能使用am去模拟各种系统的行为。

在 adb shell 中,您可以使用 Activity 管理器 (am) 工具发出命令以执行各种系统操作,如启动 Activity、强行停止进程、广播 intent、修改设备屏幕属性,等等。在 shell 中,相应的语法为:

am command

您也可以直接从 adb 发出 Activity 管理器命令,无需进入远程 shell。例如:

adb shell am start -a android.intent.action.VIEW start [options] :启动activity通过指定的intent参数。

在这里插入图片描述

startservice [options] : 启动service通过指定的intent参数 force-stop : 强制停止指定的package包应用。 kill [options] :杀死指定package包应用进程 kill-all :杀死所有的后台进程。

在这里插入图片描述

broadcast [options] :发送一个intent instrument [options] :测试命令

在这里插入图片描述

profile start :在进程中运行profile,分析结果写到里。 profile stop :停止profile。 set-debug-app [options] :设置package包应用为debug模式。 clear-debug-app :清空之前用set-debug-app命令设置的package包应用。

在这里插入图片描述

monitor screen-compat display-size display-density to-uri to-intent-uri

在这里插入图片描述

1.2 pm命令

pm全称package manager,你能使用pm命令去模拟android行为或者查询设备上的应用等,当你在adb shell命令下执行pm命令:

pm command

您也可以直接从 adb 发出软件包管理器命令,无需进入远程 shell。例如:

adb shell pm uninstall com.example.MyApp

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

二、常用命令 开启adb服务

adb start-server 开启adb服务

关闭adb服务

adb kill-server 关闭adb 服务

2.1查询设备 adb devices -l

查看哪些设备实例已连接到 adb 服务器

可以使用 devices 命令生成已连接设备的列表。

adb devices -l 序列号:由 adb 创建的字符串,用于通过端口号唯一标识设备。 序列号示例:emulator-5554状态:设备的连接状态: offline:设备未连接到 adb 或没有响应。device:设备现已连接到 adb 服务器。此状态并不表示 Android 系统已完全启动并可正常运行,因为在设备连接到 adb 时系统仍在启动。在启动后,这将是设备的正常运行状态。no device:未连接任何设备。 说明:包含 -l 选项,devices 命令会告知设备列表。 2.2 将命令发送至特定设备 adb devices -s

请使用 devices 命令获取目标设备的序列号。

获得序列号后,请结合使用 -s 选项与 adb 命令来指定序列号。

在以下示例中,先获得了已连接设备的列表,然后使用其中一个设备的序列号在该设备上安装了 helloWorld.apk。

$ adb devices List of devices attached emulator-5554 device emulator-5555 device $ adb -s emulator-5555 install helloWorld.apk

如果有多个可用设备,但只有一个是模拟器,请使用 -e 选项将命令发送至该模拟器。同样,如果有多个设备,但只连接了一个硬件设备,请使用 -d 选项将命令发送至该硬件设备。

2.3 安装应用 adb install

使用 adb 的 install 命令在模拟器或连接的设备上安装 APK:

adb install path_to_apk

安装测试 APK 时,必须在 install 命令中使用 -t 选项。

2.4 设置端口转发 adb forward

使用 forward 命令设置任意端口转发 , 将特定主机端口上的请求转发到设备上的其他端口。

示例设置了主机端口 6100 到设备端口 7100 的转发:

adb forward tcp:6100 tcp:7100

以下示例设置了主机端口 6100 到 local:logd 的转发:

adb forward tcp:6100 local:logd 2.5 将文件复制到设备push/从设备复制文件pull

pull 将文件复制到设备。

push 命令从设备复制文件。

与 install 命令(仅将 APK 文件复制到特定位置)不同,使用 pull 和 push 命令可将任意目录和文件复制到设备中的任何位置。

从设备中复制某个文件或目录(及其子目录)

adb pull remote local

如需将某个文件或目录(及其子目录)复制到设备

adb push local remote

将 local 和 remote 替换为开发机器(本地)和设备(远程)上的目标文件/目录的路径。例如:

adb push foo.txt /sdcard/foo.txt 2.6 停止 adb 服务器 adb kill-server

如需停止 adb 服务器,使用 adb kill-server 命令 。

2.7 截取屏幕截图

screencap 命令是一个用于对设备显示屏截取屏幕截图的 shell 实用程序。在 shell 中,语法如下:

screencap filename

如需从命令行使用 screencap,请输入以下命令:

adb shell screencap /sdcard/screen.png

以下屏幕截图会话示例展示了如何使用 adb shell 截取屏幕截图,以及如何使用 pull 命令从设备下载屏幕截图文件:

$ adb shell shell@ $ screencap /sdcard/screen.png shell@ $ exit $ adb pull /sdcard/screen.png 2.8 录制视频

screenrecord 命令是一个用于录制设备(搭载 Android 4.4(API 级别 19)及更高版本)显示屏的 shell 实用程序。该实用程序将屏幕 Activity 录制为 MPEG-4 文件。您可以使用此文件创建宣传视频或培训视频,或将其用于调试或测试。

在 shell 中,使用以下语法:

screenrecord [options] filename

如需从命令行使用 screenrecord,请输入以下命令:

adb shell screenrecord /sdcard/demo.mp4

按 Ctrl + C 键(在 Mac 上,按 Command + C 键)可停止屏幕录制;如果不手动停止,到三分钟或 --time-limit 设置的时间限制时,录制将会自动停止。

如需开始录制设备屏幕,请运行 screenrecord 命令以录制视频。然后,运行 pull 命令以将视频从设备下载到主机。下面是一个录制会话示例:

$ adb shell shell@ $ screenrecord --verbose /sdcard/demo.mp4 (press Control + C to stop) shell@ $ exit $ adb pull /sdcard/demo.mp4

screenrecord 实用程序能以您要求的任何支持的分辨率和比特率进行录制,同时保持设备显示屏的宽高比。默认情况下,该实用程序以本机显示分辨率和屏幕方向进行录制,时长不超过三分钟。

screenrecord 实用程序的局限性:

音频不与视频文件一起录制。无法在搭载 Wear OS 的设备上录制视频。某些设备可能无法以它们的本机显示分辨率进行录制。如果在录制屏幕时出现问题,请尝试使用较低的屏幕分辨率。不支持在录制时旋转屏幕。如果在录制期间屏幕发生了旋转,则部分屏幕内容在录制时将被切断。-

在这里插入图片描述

更多命令 获取包名和界面名 adb shell dumpsys window windows | findstr mFocusedApp 使用adb更换apk adb connect ip //连接机顶盒 adb remount //获取权限 adb push newAppName.apk /system/app //将新apk推到机顶盒 adb shell //进入shell cd /system/app chmod 777 newAppName.apk rm oldAppName.apk //删除或者mv oldAppName.apk oldAppName.apk.bak sync reboot 用U盘更换apk 使用SecureCRT+U盘 1、mount -rwo remount /system 2、cd /system/app 3、ll 4、rm oldAppName.apk 5、cp /U盘路径/newAppName.apk 6、sync 7、chmod 644/777 newAppName.apk 8、reboot 获取系统权限

mount -o remount /system

查看版本号

getprop ro.build.version.incremental

【版本】查看APK版本

pm dump XXX(包名) | grep version

pm dump com.xxx | grep version 查看APK内存占用

procrank | grep apk包名关键字

强制停止某应用

am force-stop 包名

清除APK的数据及缓存

pm clear 包名

【启动】通过命令启动APK

am start -n APK包名/启动类名

am start -a APK的action

adb shell am start -n com.xxx adb shell am start -n com.xxx 通过IPTV拉起页面

am start -n IPTV包名/启动类名 -e intentMsg "http://XXX"

【包名】过滤包名关键字查看对应APK所在位置

pm list packages -f | grep apk包名

dumpsys package apk包名

查看栈顶activity

dumpsys activity | grep "mFocusedActivity"

截屏

/system/bin/screencap -p /sdcard/screencap.png

录屏

screenrecord /sdcard/BlackScreen.mp4

命令抓取网络包

tcpdump -i any -p -s 0 -w /data/123.pcap

命令抓日志

logcat -c && logcat -v threadtime > /data/123.log 重定向抓log logcat -v time > /data/d.log

【安装】安装APK

pm install -r 待安装apk文件目录

使用 -r 选项进行重新安装,该选项会保留应用程序的数据。 安装 adb install -r D:\xxx\xxx.apk 【卸载】卸载APK(仅卸载/data/app目录下安装的apk)

pm uninstall apk包名

adb shell pm uninstall com.xxx 强制删除某目录

rm -rf XXX目录

查询所有系统应用

pm list packages -s

查询所有第三方应用

pm list packages -3

启动adb服务

adb strat-server

停止adb服务

adb kill-server

adb连接设备(该设备需开启adb)

adb connect 设备ip

adb断开所有已连接设备

adb disconnect

查看当前连接的设备IP地址

adb devices

adb获取root权限

adb root(切换为root用户,若要使用shell命令,需再次重新连接该设备)

adb挂载设备

adb remount

adb进入shell模式

adb shell

adb重启已连接的设备

adb reboot

adb安装应用

adb install -r 待安装应用文件存放目录

adb卸载应用(仅卸载/data/app目录下安装的apk)

adb uninstall 待卸载应用的包名

adb导出已连接设备中某目录的文件到本地PC

adb pull 已连接设备中的文件目录 本地PC磁盘目录

adb将本地PC的文件直接导入到已连接设备某目录

adb push 本地PC中文件的目录 已连接设备的某目录

查看内存 adb shell后 cat /proc/meminfo


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3