首页 > 其他分享 >adb

adb

时间:2024-04-17 17:34:47浏览次数:18  
标签:shell logcat package am adb 日志

目录


adb 下载

adb命令

格式

adb [-d|-e|-s <设备序列号>] <子命令>

如果只有一台设备的话就可以忽略 [-d|-e|-s ] 部分

adb常用命令

adb help //查看帮助
adb version //查看adb版本号
adb devices //查看设备
adb get-state// 获取设备状态
adb start-server //启动服务
adb kill-server // 杀死服务

adb shell命令

adb shell screencap /sdcard/screen.png //屏幕截图(并存放sdcard目录,命名screen.png)
adb shell screenrecord /sdcard/demo.mp4 //录制屏幕(Android4.4以上可用)
adb shell dumpsys activity activities //查看activity信息
adb shell dumpsys activity |findstr mResumedActivity //获取当前activity信息
adb shell dumpsys window windows | findstr “Current” //查看当前app窗口activity

Wifi 操作命令

adb connect IP:port //连接设备
adb disconnect //断开连接所有设备
adb disconnect IP:port //断开连接指定设备
adb root //获取root权限
adb remount //重新挂载文件系统(默认只读,执行命令后可写)

安装应用命令

adb install Package //安装APK
adb install -r Package //强制覆盖安装
adb install -t Package //允许降级覆盖安装
adb install -d Package //允许测试包

卸载应用命令

adb uninstall PackageName //卸载APK
adb uninstall -k (keep) PackageName //保留用户数据卸载
adb pull //将设备文件文件发送到PC
adb push //将PC文件发送到设备

日志命令

格式 : adb logcat [选项] [过滤项]

"-v"选项 : 设置日志的输出格式;----->adb logcat -v threadtime 查看日志输出时间和线程信息
"-c"选项 : 清空所有的日志缓存信息;---->adb logcat -c
"-d"选项 : 将缓存的日志输出到屏幕上, 并且不会阻塞;------->adb logcat -d
"-t"选项 : 输出最近的几行日志, 输出完退出, 不阻塞;------>adb logcat -t 5 输出日志缓冲区的最近5行
"-g"选项 : 查看日志缓冲区信息; ------>adb logcat -g
"-G"选项 : 设置日志缓冲区信息; ------>adb logcat -G 200M
"-B"选项 : 以二进制形式输出日志; ----> adb logcat -B

adb logcat -c //清空日志
adb logcat -v threadtime >D:\111.log //抓日志并输出保存D:\111.log
adb logcat -G 200M //设置日志缓存大小
adb logcat -g //查询日志缓存大小

am参数

am全称activity manager,使用am参数去模拟各种系统的行为,例如去启动一个activity,强制停止进程,发送广播进程,修改设备屏幕属性等等。

start \[options\] :启动activity通过指定的intent参数。具体intent参数参照官方表。  
 startservice \[options\] : 启动service通过指定的intent参数。具体intent跟start命令参数相同。  
force-stop : 强制停止指定的package包应用。  
 kill \[options\] :杀死指定package包应用进程,该命令在安全模式下杀死进程,不影响用户体验。参数选项:--user | all | current: 指定user进程杀死,如果不指定默认为所有users。(关于USER\_ID下面会介绍到)  
 kill-all :杀死所有的后台进程。  
 broadcast \[options\] :发送一个intent。具体intent参数参照start命令参数。参数选项:--user | all | current: 指定user进程杀死,如果不指定默认为所有users。  
 instrument \[options\] :测试命令,不多作介绍。  
 profile start :在进程中运行profile,分析结果写到里。  
 profile stop :停止profile。  
 set-debug-app \[options\] :设置package包应用为debug模式。参数选项:-w|--persistent:等待进入调试模式,保留值。  
 clear-debug-app :清空之前用set-debug-app命令设置的package包应用。  
 启动:adb shell app am start -n {packageName}/.{activityName}  
 杀app的进程:adb shell am kill <packageName>  
 强制停止一切:adb shell am force-stop <packageName>  
 启动服务:adb shell am startservice  
 停止服务:adb shell am stopservice  
 拨打电话: adb shell am start -a android.intent.action.CALL -d tel:10086 或者 adb shell am start -a android.intent.action.CALL tel:15967562075  
进入手机qq主页:adb shell am start -n com.tencent.mobileqq/com.tencent.mobileqq.activity.SplashActivity  
 进入手机微信主页 :adb shell am start -n com.tencent.mm/.ui.LauncherUI

pm参数

pm全称package manager,使用pm命令去模拟android行为或者查询设备上的应用等

 list packages \[options\] :打印所有包,选择性的查询包列表。  
 参数选项:-f:查看关联文件,即应用apk的位置跟对应的包名(如:package:/system/app /MusicPlayer.apk=com.sec.android.app.music);  
 \-d:查看disabled packages;  
 \-e:查看enable package;  
 \-s:查看系统package;  
 \-3:查看第三方package;  
 \-i:查看package的对应安装者(如:1、 package:com.tencent.qqmusic installer=null 2、package:com.tencent.qqpim installer=com.android.vending);  
 \-u:查看曾被卸载过的package。(卸载后又重新安装依然会被列 入);  
 \--user:The user space to query。  
 list permission-groups :打印所有已知的权限群组。  
 list permissions \[options\] :选择性的打印权限。参数选项:  
 list features :设备特性。硬件之类的性能。  
 list libraries :当前设备支持的libs。  
 list users :系统上所有的users。(上面提到的USER\_ID查询方式,如:UserInfo{0:Primary:3}那么USER\_ID为0)  
 path :查询package的安装位置。  
 install \[options\] :安装命令。  
  uninstall \[options\] :卸载命令。  
  clear :对指定的package删除所有数据。  
 enable :使package或component可用。(如:pm enable "package/class")  
 disable :使package或component不可用。(如:pm disable "package/class")  
 disable-user \[options\] :参数选项:--user : The user to disable。  
 grant :授权给应用。  
revoke :撤销权限。  
set-install-location :设置默认的安装位置。其中0:让系统自动选择最佳的安装位置。1:安装到内部的设备存储空间。2:安装到外部的设备存储空间。(这只用于调试应用程序, 使用该命令可能导致应用程序退出或者其他不适的后果)。  
get-install-location :返回当前的安装位置。返回结果同上参数选项。  
set-permission-enforced \[true|false\] :使指定权限生效或者失效。  
create-user :增加一个新的USER。  
 remove-user :删除一个USER。  
get-max-users :该设备所支持的最大USER数。(某些设备不支持该命令)  
列出手机所有的包名: pm list packages  
 安装/卸载: pm install/uninstall

标签:shell,logcat,package,am,adb,日志
From: https://www.cnblogs.com/mydodo/p/18141311

相关文章

  • 全志平台增加adb和串口登录的账号密码验证
    直接引用全志论坛的一篇文章,很完整了,当前验证R16平台可行。 链接【https://bbs.aw-ol.com/topic/598/faq-%E5%85%A8%E5%BF%97r329-tina%E4%B8%AD%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8adb-%E4%B8%B2%E5%8F%A3%E5%AF%86%E7%A0%81%E7%99%BB%E5%BD%95?_=1713338833551&lang=zh-CN......
  • Percona XtraDB Cluster 集群安装(PXC)
    PerconaXtraDBCluster集群安装安装环境:CentOSLinuxrelease7.6.1810(Core)16核64G在线安装离线安装配置文件在线安装添加仓库内容(在线安装)yuminstallhttps://repo.percona.com/yum/percona-release-latest.noarch.rpm-y安装:yuminstallPercona-XtraDB-Clu......
  • 肖sir_jmeter之录制脚本(badboy)
    脚本录制: 一、badboy录制脚本=======================================1、设计性能场景2、根据性能场景录制性能脚本(badboy或者jmeter中反向代理录制脚本)=======================================3、badboy工具的使用(1)下载badboy包   (2)安装badboy包第一步:  ......
  • Android 无线调试 adb connect ip:port 失败
    1.在手机打开无线调试使用adbconnect连接adbconnect192.168.14.164:39511如果连接成功,查看连接的设备,忽略配对下面的步骤.adbdevices如果连接失败:failedtoconnectto192.168.14.164:39511如果失败了,可以杀死一下进程,然后执行后面的操作adb......
  • CentOS8 安装adb调试工具
    1、在opt目录下新建AndroidSdk文件夹,用于存放工具cdopt/mkdirAndroidSdk2、进入AndroidSdk下载工具包cdAndroidSdk/wgethttps://dl.google.com/android/repository/sdk-tools-linux-3859397.zip3、解压工具包,并删除源文件unzipsdk-tools-linux-3859397.ziprm-rfsdk......
  • adb工具安装——windows
    1、工具包下载下载地址:https://developer.android.google.cn/tools/releases/platform-tools?hl=zh-cn 2、工具包解压解压后进入platform-tools文件下,并copy此路径 3、环境变量配置系统属性-高级-环境变量在系统变量path中添加拷贝的路径 4、cmd中验证安装情况在......
  • Arm架构下麒麟操作系统安装配置Mariadb数据库
    1、安装配置JDK(1)检查机器是否已安装JDK执行java-version命令查看机器是否安装JDK,一般麒麟操作系统默认安装openjdk1.8。  (2)安装指定版本JDK如果麒麟操作系统默认安装的openjdk1.8不符合需求的话,可以卸载机器安装的openjdk1.8并按需安装所需的openjdk版本,此步骤本文不......
  • adb命令大全(含高级用法,均已实际使用验证)
    目录Android调试桥(adb)Ubuntu系统安装adbadb命令基础用法adb命令高级用法Android调试桥(adb)ADB是一款多功能命令行工具,可让你通过USB或Wi-Fi与Android设备通信。它用于各种任务,包括:调试应用程序安装和卸载应用传输文件检索设备信息运行shell命令Ubun......
  • adb shell input keyevent
    adbshellinputkeyevent命令用于模拟物理按键的输入事件,其参数是按键的键码(keycode)。键码是一个整数值,代表不同的按键,具体的键码可以在Android官方文档中找到 以下是Android系统中键码列表:KEYCODE_UNKNOWN(0):未知键码KEYCODE_SOFT_LEFT(1):左软键KEYCODE_SOFT......
  • docker里面安装mariadb,设置用户名密码,登录mariadb
    5.启动Docker服务并设置开机自启动:  ```  sudosystemctlstartdocker  sudosystemctlenabledocker  ```###步骤2:在Docker中安装Nginx1.拉取Nginx镜像:  ```  sudodockerpullnginx  ```2.运行Nginx容器:  ```  sudo......