adb shell中的am pm命令、常用命令总结 |
您所在的位置:网站首页 › 安卓shell打开软件 › adb shell中的am pm命令、常用命令总结 |
文章目录
一、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参数。pm全称package manager,你能使用pm命令去模拟android行为或者查询设备上的应用等,当你在adb shell命令下执行pm命令: pm command您也可以直接从 adb 发出软件包管理器命令,无需进入远程 shell。例如: adb shell pm uninstall com.example.MyApp
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/从设备复制文件pullpull 将文件复制到设备。 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.mp4screenrecord 实用程序能以您要求的任何支持的分辨率和比特率进行录制,同时保持设备显示屏的宽高比。默认情况下,该实用程序以本机显示分辨率和屏幕方向进行录制,时长不超过三分钟。 screenrecord 实用程序的局限性: 音频不与视频文件一起录制。无法在搭载 Wear OS 的设备上录制视频。某些设备可能无法以它们的本机显示分辨率进行录制。如果在录制屏幕时出现问题,请尝试使用较低的屏幕分辨率。不支持在录制时旋转屏幕。如果在录制期间屏幕发生了旋转,则部分屏幕内容在录制时将被切断。-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 包名 【启动】通过命令启动APKam 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包名 查看栈顶activitydumpsys 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 【安装】安装APKpm 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导出已连接设备中某目录的文件到本地PCadb pull 已连接设备中的文件目录 本地PC磁盘目录 adb将本地PC的文件直接导入到已连接设备某目录adb push 本地PC中文件的目录 已连接设备的某目录 查看内存 adb shell后 cat /proc/meminfo |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |