安卓adb命令大全(安卓adb命令 打开调试)

本篇文章给大家谈谈安卓adb命令大全,以及安卓adb命令 打开调试对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

常用的adb命令

在平时的工作中,会经常用到adb命令,在这里稍微整理了一下。

一.概要

1.什么是adb?

adb全称为Android Debug Bridge,就是起到调试桥的作用。顾名思义,adb就是一个debug工具。

2.adb工作原理

不是很理解?那就来看看它的工作原理吧。

上图是一个简单的adb工作原理图。adb客户端服务器端程序,由上图可以看出它主要三个组件组成:Client,Server,Daemon。

(1)当你启动一个adb Client(客户端),Client首先会选确认是否已有一个adb

Server(服务器)进程在运行,如果没有,则会启动Server进程。此时,adb Server就会绑定本地的TCP端口5037,并监听adb

Client发来的命令。

(2)接着,Server将会扫描所有5555到5585范围内的奇数端口来定位所有的模拟器或设备,并与之建立连接。一旦Server找到

了adb

daemon(守护程序),它将建立一个到该端口的连接,这样,我们就可以使用adb命令控制和访问模拟器或设备了。在这里,需注意的是任何模拟器或设备实例会取得两个连续的端口清橘:一个偶数端口用来相应控制台的连接,和一个奇数端口用来响应adb连接。

3.adb的作用

借助adb工具,我们可以管理设备或手机模拟器的状态,还可以进行很多手机操作,如安装软件、系统升级、运行shell命令等等。简而言之,adb就是连接Android手机和PC端的桥梁,可以让用户在电脑上对手机进行全面的操作。

二.常用命令

这个部分主要介绍adb的使用方法和一些常用的命令。

设置adb环境:将android sdk工作目录添加到系统环境变量中,则可使用adb命令了。

1. adb devices

查看当前连接的设备(连接计算机的Android设备或者模拟器)。

2.adb install

adb install apk文件路径,将指定的apk安装到设备上,安装的apk包会放在/data/app目录下。

几个参数:

-r 强制安装

-d(真机,多个设备中只有一个真机时适用)

-e(模拟器,多个设备中只有一个模拟器时适用)

-s(指定设备,后接序列号)

adb –s 44a188f9 install –r test.apk(其中44a188f9即序列号,通过adb devices可获取)

3.adb uninstall

adb uninstall apk包名

adb uninstall –k apk包名

-k参数为卸载软件镇哪时保留配置和缓存文件

4.adb reboot

重启android设备

5.adb shell

通过adb shell 命令,就可以进入设备或者模拟器的shell环境了,在这个Linux shell中,我们就可以执行各种Linux命令了。

如果只想执行一条shell命令,就可以采用:adb shell [shell_command]

在实际使用中,经常与grep或findstr一起使用,起到过滤作用,查看自己需要的关键信息。

6.adb shell su

前提手机已经root。获取adb shell的root权限。

使用su提权,用户命令提示符有$变成#,如果手机没有root,会提示su:permission denied。

7.adb shell ps/top

查看当前终端中的进程信息,如pid等。

8.adb shell am/pm

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

如:adb shell am start apk包名/activityName:启动一个activity。

pm全称为package manager,利用pm命令可模拟android行为或查询设备上的应用等。

如:adb shell pm list packages

列出当前设备所有已安装的程序的包名。

说明:

管道符“|”:可以把标准的输入流与标准的输出流进行合并,或者把某个命令的标准输出流作为另一个命令的标准输入流。

exit退出shell。

由于grep为linux命令,运行单条adb shell 时并没有进入linux

shell环境,并不能用grep等其他linux命令,只能用window cmd的命令。在这里可以用findstr来代替grep,使用方法为

findstr/grep [keyword]

更详细的内容可查看 参考文献3 和 参考文献4 。

对于常用的linux命令和常用的windows 控制台命令,以后再作总结。

9.adb pull 和 adb push

adb pull 设备中的文件路径 本地路径:从模拟器或设备中复制文件到本地。

adb push 本地文件路径 设备中的路径:将本地文件或目录复制到模拟器或设备。

这里还涉及到一个权限的问题,在后续的博文中再作介绍。

10.adb shell dumpsys

Android提供的dumpsys工具用于查看感兴趣的系统服务信息与状态。

参考下表:

11.adb shell monkey

跑monkey是android自动化测试的一种手段,所谓monkey测试就是模拟用户的按键输入,触摸屏输入,手势输入等。当Monkey程序在模拟器或设备运行的时候,如果用户比如点击,触摸,手势或一些系统级别的事件的时候,它就会产生随机脉冲,所以可以用Monkey的随机重复的方法对apk作压力测试,来测试android

app的稳定性。

如下为测试腾讯新闻apk的一个简单实例:

说明:第一个-s指定设备,如果只连接了一台设备,可不用该参数。

-p apk包名只允许系统启动指定的app,如果不指定,将允许系统启动设备中的所有app,也可指定多个包。

--throttle 毫秒数 指定用户操作(事件)间的时延。

--ignore-crashes 指定当应用程序崩溃时,Monkey依然发送事件,直到事件计数完成。

--ignore-timeouts 当应用程序发生ANR错误时,Monkey依然会发送事件,直到事件计数完成。

第2个-s,用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。

-v 用于指定反馈信息级别,总共分为level 0、level 1、level 2三个级别,级别越高,输出的日志越详细。

最后的数字(这里是500):表示Monkey程序模拟500次随机用户操作事件。

输出测试结果到D:\monkeylog.txt

更详细的参数可查看 参考文献5 。

部分测试结果如下:

对于测试结果的分析,通过搜索关键词来定位错误,主要包括以下四个方面:

1)ANR(Application Not

Response):程序无响应,一般主线程超过5秒没处理就会出现ANR错误。通过搜索ANR关键词来定位关键的事件信息。除了导出日志外,还可以将/data/anr/目录下的trace.txt文件导出,用来定位分析问题。使用adb

pull /data/anr/trace.txt d:\ 将trace.txt文件导出到d盘。

2)ForceClosed或其他异常退出信息:通过搜索Fatal关键词来定位。

3)崩溃问题:通过搜索Exception关键词来定位。

4)发生异常后,通过搜索Crash关键词来定位到详细的堆栈信息。

 12.kill

kill用来中止一个进程。

比如我们在跑monkey的时候,怎么强制关闭monkey呢,可以用kill monkey进程PID

说明:另开启一个cmd,找到monkey的pid号,然后杀掉即可。

参考文献:

1.Android调试桥:

2.Android性能分析工具dumpsys的使用:

3.adb shell 中的am pm命令:

4.adb shell 启动应用程序的方法:

5.Monkey压力测试详解:

[img]

ADB常用命令大全

安卓调试桥(Android Debug Bridge),是Android SDK中的一个调试工具, 使用adb可以直接操作管理Android模拟器或Andriod真机设备,在开发测试过程中,起到调试的作用。

adb.exe的存放路径:Android-SDKplatform-tools

adb help //查看帮助

adb version //查看adb版本号

adb devices //查看设备

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 -c //清空日志

adb logcat -v threadtime D:111.log //抓日志并输出保存D:111.log

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

adb shell //进入设备内部

cd //切换目录

pwd //查看当前路径

ping //查看网络连接

rm* //删除目录下的所有文件

cp -r /path/filename /NewPath //拷贝文件

busybox find / -name FileName //查找文件

tcpdump -i any -p -s 0 -w /data/data/1111.pcap //抓取网络包

pm uninstall PackageName //卸载APK

pm path PackageName //查看APK存放位置

pm clear PackageName //清除APK缓存

dumpsys package om.android.xxx //查看APK的具体信息

dumpsys package om.android.xxx | grep version //查看APK版本

dumpsys package com.tencent.mm | findstr versionName //查看APK版本

am start PackageName //拉起APK

am start -n com.android.xxx/.WelcomeActivity //直接拉起APK的指定WelcomeActivity

am start -a android.intent.action.VIEW -d //拉起百度

am start -n om.android.xxx/.WelcomeActivity --es actionUrl ";object=5005153" //指定Activity上拉起H5

am force-stop + 报名 //杀死进程

kill `ps |grep -E "icntv|istv" | busybox awk '{print $2}'` //杀进程

md5 com.android.xxx //查看已安装应用MD5

busybox vi hispreinstall.sh //编辑文件(命令行)

chmod 777 /system/bin/hispreinstall.sh //修改权限

cat /system/build.prop | grep "product" //查看设备信息

exit //退出shell交互模式

adb shell getprop ro.build.version.release //查看Android系统版本

adb get-serialno //获取手机序列号

adb shell dumpsys package //列出所有安装应用的信息

adb shell pm list packages //查看设备中的所有应用的包名

adb shell cat/proc/cpuinfo //获取CPU型号等信息(HardWare后面是CPU型号)

adb shell "ps | grep packageName" //查指定程序pid

adb shell getprop //查看手机信息

adb shell getprop ro.serialno //查看手机序列号

adb shell cat /proc/cpuinfo //查看手机CPU信息

adb shell cat /proc/meminfo //查看手机内存信息

adb reboot recovery //重启手机到recovery刷机模式

adb reboot bootloader //重启手机到bootloader界面

adb shell dumpsys battery //获取电池信息

adb shell dumpsys battery set status 1 //设置手机进入非充电状态,为2设置充电状态

adb shell dumpsys battery set level 100 //设置电量百分比

adb shell dumpsys batterystats //获取整个设备的电量消耗信息

adb shell dumpsys batterystats | more //综合电量消耗

adb shell dumpsys batterystats com.android.xxx //获取某个apk的电量消耗信息

adb shell dumpsys batterystats packageName | more //获取指定程序电量消耗信息

adb shell cat /proc/uid_stat/$PID/tcp_snd //发送的数据流量

adb shell cat /proc/uid_stat/$PID/tcp_rcv //接收的数据流量

procrank //查看内存

adb shell top | findstr com.android.xxx //查看指定APK内存

top -n 3 |grep -E "com.android.xxx|android.yyy" //查看内存

adb shell dumpsys cpuinfo |findstr com.android.xxx //查看指定APK CPU

dumpsys cpuinfo |grep -E "com.android.xxx|android.yyy" //查看CPU

adb shell settings put global http_proxy ip(PC):port(默认8888) //设置代理

adb shell settings get global http_proxy //查看代理

adb shell sqlite3 /data/data/com.android.providers.settings/databases/settings.db //进入sqlite

delete from global where name in('global_http_proxy_host','global_http_proxy_port','http_proxy'); //移除代理

adb shell stop //关闭设备

adb shell start //开启设备

adb start-server //启动adb服务

adb kill-server //关闭adb服务

adb reboot //重启手机

adb shutdown //关闭手机

1、首次使用USB线连接Android手机,然后打开Terminal输入:adb tcpip 端口号(默认5555)

2、查看手机IP地址:设置-关于手机-状态信息-IP地址

3、通过adb连接ip地址:adb connect IP:port

Android常用的ADB命令

重启:adb reboot

推文件:adb push E:\xxx.txt storage/sdcard

拉文件:adb push storage/洞猜sdcard .

将日志保存到电脑文件: adb logcat xxx. xxx电脑文本地址

清除指定应用的数据和缓存:adb shell pm clear 例:adb shell pm clear com.yzl.test

查看日志缓冲区大小:adb shell logcat-g

设置日志缓冲区大小:adb logcat-G10M

打开蓝牙:adb shell svc bluetooth enable

关闭蓝牙:adb shell svc bluetooth disable

查询蓝牙是否打开:adb shell settingsgetglobalbluetooth_on

获取蓝牙Mac地址:adb shell settingsgetsecure bluetooth_address

获取某个包名的安装路径:adb shell pm path com.xx.xx

查看所有存活的进程:adb shell ps

过滤关键字查看adb shell ps|findstr xxx

强制安装版本号更低的apk:adb install -r -d "C:\xx.apk"

对指庆拿定应用进行500次模拟触摸事件:adb shell monkey -p com.yzl.test -v 500

查看某个apk的应用信息、版本信息:adb shell dumpsys package com.yzl.test

查看已安纳差型装应用列表:adb shell pm list package或adb shell pm list packages-s

常用的安卓手机adb命令总结

很早就想整理一下自己平时常用的一些adb命令,不仅为了便于以后查找,而且整理的过程自己又重新复习了一遍,但是当我开始在度娘一搜的时候,发现很多人已经写的非常详细了,尤其是当我发现了这篇adb概括

心中一句NND,怎么可以写的这么详细,瞬间没了想写这篇文章的欲望,如果你点了链接发现确实很全,那么恭喜你可以关掉这篇了,哈哈哈。

我就不这么想的,虽然很全,但不是旁蚂我常用的,因人而异,所以我就权当记笔记唤猛+替这哥们宣传了。

– adb devices , 获取设备列表及设备状态

设备的状态有 3 种

device , 设备连接正常

offline , 设备离线,连接出现异常

unauthorized 设备为进行授权,需要在设备上是否允许调试对话框进行授权

offline情况解决办法,先执行adb kill-server 命令,再运链埋执行adb start-server 命令,再尝试adb devices 查看列表,如果还是offline,来来来,使用必杀技,重启大法。

当电脑连接多个android设备并可用时,所有的adb命令都需要指定设备后执行(当然你也可以移除多余的设备)

adb -s 设备名称 install/uninstall/shell/pull/push等命令

– adb install app在pc硬盘路径,选中app直接拖入即可

常见的错误情况

INSTALL_FAILED_TEST_ONLY, 安装的app的debug版本的,未签名,adb install -t 路径即可安装

INSTALL_FAILED_DUPLICATE_PACKAGE, 已经安装相同包名的app, 先卸载再安装

– adb uninstall app的包名,卸载app

adb pull 将 Android 设备上的文件或者文件夹复制到本地

adb pull sdcard/Android/111.txt E:\

小技巧,可以将本地路径指定为桌面,方便查看, 在桌面按住shift键,鼠标右键选择在此处打开命令行窗口,直接输入adb pull sdcard/Android/111.txt 执行,就可将111.txt复制到桌面。

前提是设备已经获取root权限

adb root

adb remount

adb push 将pc上文件复制到android设备中,修改room原生应用时比较频繁使用,如settings.apk, launcher3.apk

– adb shell pm 命令

adb shell pm list package 列出android设备上的所有app

adb shell pm list package -s 列出android设备上的系统级别app

adb shell pm list package -3 列出android设备上的第三方app(用户安装的)

adb shell pm list package -f 列出app包名及对应的apk名及存放位置

adb shell pm list package -i 列出app包名及其安装来源(应用市场名称)

adb shell pm dump app包名 列出app的相关信息,类似获取Manifest文件内容

-查看前台 Activity

adb shell dumpsys activity activities “| grep mFocusedActivity”

-adb shell am 命令

最常用的就是启动指定的activity和发送指定的广播

启动指定的activity

操作指令 adb shell am start -n 包名/类名

注:如果启动activity时,出现如下错误

java.lang.SecurityException: Permission Denial: starting Intent { flg=0x10000000 cmp=com.mediatek.engineermode/.io.Gpio } from null (pid=3083, uid=2000) not exported from uid 1001

解决办法,1、如果是你自己可控的app,那么找到你要调用的activity在manifest.xml中,增加

1

配置即可, android:name="" 可以为空字符串。

2、如果是不可控的app,例如我调用的系统原生app,那么你就洗洗睡吧,别折腾了,除非你修改源码和上边一样操作,重新push替换原来的app。

启动默认浏览器打开一个网页

adb shell am start -a android.intent.action.VIEW -d  * ********

先停止目标应用,再启动

adb shell am start -s com.android.camera/.Camera

启动相机

adb shell am start -n com.android.camera/.Camera

启动设置

adb shell am start -n com.android.settings/com.android.settings.Settings

启动Wifi设置

adb shell am start -n com.android.settings/com.android.settings.wifi.WifiSettings

启动蓝牙设置

adb shell am start -n com.android.settings/com.android.settings.bluetooth.BluetoothSettings

其它的类似只要你能在manifest中找到配置的,都可以通过这种方法来调用

发送指定的广播

操作指令 adb shell am broadcast -a 广播名 --ei/es/ez 参数名 参数值 --ei/es/ez 参数名 参数值

–ei integer 值

–es String 值

–ez boolean 值

–ef float 值

–el long 值

例如之前写的

Android6.0 源码修改之Setting列表配置项动态添加和静态添加, 当中就通过发送广播来接收增加配置列表项

adb shell am broadcast -a cn.dynamic.add.settingcategoryitem --es location “0-2” --es title “红” --es intent “com.android.settings.SCHEDULE_POWER_ON_OFF_SETTING”

-adb shell input keycode 指令

HOME 键 adb shell input keycode 3

返回键 adb shell input keycode 4

打开浏览器 adb shell input keycode 64

-adb shell wm 指令

屏幕分辨率 adb shell wm size

屏幕密度 adb shell wm density

adb shell wm density 320/480/640 可修改屏幕密度查看效果,对应Launcher图标会缩放

adb shell ifconfig 命令

IP 地址 adb shell ifconfig “| grep Mask”

WIFI 地址 adb shell ifconfig wlan0

状态栏和导航栏的显示隐藏

命令:

adb shell settings put global policy_control

可由如下几种键及其对应的值组成,格式为 key1=value1:key2=value2。

key        含义

immersive.full        同时隐藏

immersive.status        隐藏状态栏

immersive.navigation        隐藏导航栏

immersive.preconfirms        同时显示

这些键对应的值可则如下值用逗号组合:

value        含义

apps        所有应用

所有界面

packagename        指定应用

packagename        排除指定应用

例如:

adb shell settings put global policy_control immersive.full=*

表示设置在所有界面下都同时隐藏状态栏和导航栏。(重启也不会失效,恢复需调用下面的命令)

adb shell settings put global policy_control immersive.preconfirms=*

表示恢复显示

adb shell settings put global policy_control immersive.status=com.package1,com.package2:immersive.navigation=apps,-com.package3

表示设置在包名为 com.package1 和 com.package2 的应用里隐藏状态栏,在除了包名为 com.package3 的所有应用里隐藏导航栏

adb shell am force-stop app  关闭APP

adb shell pm clear APP  app进程被杀死,且会清楚所有数据

 1:查找手机安装应用的包名:adb shell pm list packages -f

    2:查看系统盘符:adb shell df

    3:查看Log 1:adb shell 2: logcat | grep "abc"

    4:删除应用:1:adbremount  2:adb shell  3:cdsystem/app   4:rm *.apk

    5:安装APK: adbinstall -r *.apk  或者 adb push*.apk  /system/app

    6:查看APP启动的时间指令

     adb shell am start -W -ncom.android.dialer/.DialtactsActivity  (W是大写)执行命令后APP会自 动启动,其中ThisTime即是本次     App启动所花费的时间。

    7:查看包名中当前所在进程信息:adb shell ps | grep +包名

    8:查看Activity运行的任务栈:adb shell dumpsys activity

     9:查看键值:adb logcat | grep intercep  -i

    10:查看模块所占有的CPU资源:adb shell top -d 2 -m 10

    11:查看可用系统的权

           $ adb shell

           # pm list permissions

   12:模拟按键的输入:adb shell input keyevent + 键值

      eg:  adb shell input keyevent  82   表示menu

             adb shell input keyevent  3     表示home

            adb shell input keyevent  19   表示up

             adb shell input keyevent  20   表示down

            adb shell input keyevent  21   表示left

             adb shell input keyevent  22   表示right

            adb shell input keyevent  66   表示enter

             adb shell input keyevent  4     表示back

    13:模拟滑动输入:adb shell input touchscreen x1 y1 x2 y2

        eg: adb shell input touchscreen swipe 18 665 18 350

    14:启动一个Activity : adb shell am start -n 包名+类名

    15:录制屏幕:adb shell screenrecord /sdcard/demo.mp4

    16:重新启动:adb reboot   

    17:Monkey的基本用法下面是一个更为典型的命令行示例,它启动指定的应用程序,并向其发送500个伪随机事件:

          $ adb shell monkey -p your.package.name -v 500

        如果跑桌面或者systemUi的monkey的话:

         adb shell monkey -v -v -p 桌面包名 --pct-touch 50 --pct-motion 30 --pct-syskeys 20 --throttle 300 -s 200 200000

    18:查找第三方应用的详细信息:

        adb shell dumpsys package +第三方包名(com.txznet.webchat)

Android—ADB命令

1、查看最上层成activity名字:

adb shell dumpsys activity | findstr "mFocusedActivity"

或者 adb shell dumpsys window w | findstr / | findstr name=

2、查看Activity的任务栈:

3、显示所有的activities的信息,包括任务栈等:

adb shell dumpsys activity

4、查看Android应用包名package和入口activity名称 :

aapt dump badging E:\apk\es3.apk

5、显示accounts信息:

adb shell dumpsys account

5、显示CPU信息 :

adb shell dumpsys cpuinfo

查看CPU使用信息

adb shell top -n 1 -d 0.5 | findstr proc_ id

6、显示键盘,窗口和它们的关系

adb shell dumpsys window

当我们需要知道设备的分辨率时

adb shell dumpsys window displays

查看UI绘制带姿核的各个层级信息

adb shell dumpsys SurfaceFlinger

7、显示wifi信息

adb shell dumpsys wifi

8、电量信息及CPU 使用时长

adb shell dumpsys batteryinfo $package_name

9、蠢掘获取安装包信息

adb shell dumpsys package packagename

10、每个应用的启动次数和册燃时间

adb shell dumpsys usagestats

11、显示状态栏相关的信息

adb shell dumpsys statusbar

12、内存信息(meminfo package_name or pid 使用程序的包名或者进程id显示内存信息)

adb shell dumpsys meminfo

得到com.teleca.robin.test进程使用的内存的信息 adb shell dumpsys meminfo com.teleca.robin.test

13、磁盘相关信息

adb shell dumpsys diskstats

14、电池相关信息

adb shell dumpsys battery

15、显示Alarm信息

adb shell dumpsys alarm

统计系统耗电量

adb shell dumpsys batterystats

设置线程的优先级

adb shell dumpsys activity|grep oom_adj

16、强制关闭一个应用程序;

adb shell am force-stop PACKAGE

17、查看内存信息

adb shell cat proc/meminfo

指定进程内存地址映射

adb shell cat proc/pid/maps

指定进程内存详细使用信息

adb shell cat proc/pid/smaps

VSS. RSS. PSS. USS 信息

adb shell procrank

指定进程VSS. RSS. PSS. USS 详细信息

adb shell procmem pid

18、查看可输入的设备

adb shell getevent -p

19、获得特定设备的输入信息

adb shell getevent /dev/input/event0

20、点击

adb shell input tap x y

21、发送按键

adb shell input keyevent 82(keycode)

22、输入文本

adb shell input text XXXX

23、查看报名中包含mobileqq的进程

adb shell ps | findstr mobileqq

24、远程进程ID

adb jdwp

25、获取序列号

adb get-serialno

26、重启到bootloader,即刷机模式

adb reboot bootloader

27、重启到recovery,即恢复模式

adb reboot recovery

28、获取机器MAC地址:

adb shell cat /sys/class/net/wlan0/address

29、获取CPU序列号

adb shell cat /proc/cpuinfo

30、覆盖安装(保留数据和缓存文件,重新安装apk)

adb install -r apkfile

31、安装apk到sd卡

adb install -s apkfile

32、卸载app但保留数据和缓存文件

adb uninstall -k package

33、查看设备cpu和内存占用情况

adb shell top

34、查看占用内存前6的app

adb shell top -m 6

35、刷新一次内存信息,然后返回

adb shell top -n 1

36、查询各进程内存使用情况

adb shell procrank

37、查看指定进程状态

adb shell ps -x [PID]

38、查看后台services信息

adb shell service list

39、查看当前内存占用(该方式只能得出系统整个内存的大概使用情况) 车

如果你想查看所有进程的内存使用情况

adb shell procrank

40、查看IO内存分区

adb shell cat /proc/iomem

41、查看wifi密码

adb shell cat /data/misc/wifi/*.conf

42、清除log缓存

adb logcat -c

43、查看设备信息

adb shell cat /system/build.prop

44、跑monkey

adb shell monkey -v -p your.package.name 500

45、列出目标设备上安装的所有app的包名

adb shell pm list packages

46、截屏命令:

adb shell screencap -p /sdcard/screen.png

adb pull /sdcard/screen.png

adb shell rm /sdcard/screen.png

录制手机屏幕,视频格式为mp4,存放到手机sd卡里,默认录制时间为180s:

adb shell screenrecord

限制视频录制时间为10s,如果不限制,默认180s:

adb shell screenrecord --time-limit 10 /sdcard/demo.mp4

指定视频分辨率大小:

adb shell screenrecord --size 1280*720 /sdcard/demo.mp4

指定视频的比特率:

adb shell screenrecord --bit-rate 6000000 /sdcard/demo.mp4

在命令行显示log:

adb shell screenrecord --time-limit 10 --verbose /sdcard/demo.mp4

47、设置、获取属性信息

adb shell getprop [key]

adb shell setprop [key] [value]

监听系统属性的变化,如果期间系统的属性发生变化则把变化的值显示出来

adb shell watchprops

48、adb logcat 每一条日志消息都有一个标记和优先级与其关联。

(1)标记是一个简短的字符串,用于标识原始消息的来源 (例如"View" 来源于显示系统)。优先级是下面的字符,顺序是从低到高:

V — 明细 (最低优先级)

D — 调试

I — 信息

W — 警告

E — 错误

F — 严重错误

S — 无记载 (最高优先级,没有什么会被记载)

(2)查看过滤日志

adb logcat ActivityManager:I *:S

*:S 用于设置所有标记的日志优先级为S,可以确保输出符合指定的过滤器设置的一种推荐的方式,

这样过滤器就成为了日志输出的“白名单”

显示所有优先级大于等于“warning”的日志

adb logcat *:W

(3)日志消息在标记和优先级之外还有很多元数据字段,这些字段可以通过修改输出格式来控制输出结果, -v 选项加上下面列出的内容可以控制输出字段:

brief — 显示优先级/标记和原始进程的PID (默认格式)

process — 仅显示进程PID

tag — 仅显示优先级/标记

thread — 仅显示进程:线程和优先级/标记

raw — 显示原始的日志信息,没有其他的元数据字段

time — 显示日期,调用时间,优先级/标记,PID

long —显示所有的元数据字段并且用空行分隔消息内容

使用 thread 输出格式

adb logcat -v thread

(4)Android日志系统为日志消息保持了多个循环缓冲区,而且不是所有的消息都被发送到默认缓冲区,要想查看这些附加的缓冲区,可以使用-b 选项,以下是可以指定的缓冲区:

radio — 查看包含在无线/电话相关的缓冲区消息

events — 查看事件相关的消息

main — 查看主缓冲区 (默认缓冲区)

查看radio缓冲区

adb logcat -b radio

48、打印应用程序的log

adb logcat -b main -v timeapp.log

49、打印射频相关的log,SIM STK也会在里面,modem相关的ATcommand等,当然跟QXDM差的很远了

adb logcat -b radio -v time radio.log

50、打印系统事件的日志,比如触屏事件

adb logcat -b events -v time

51、tcpdump 是很有用的,对于TCP/IP协议相关的都可以使用这个来抓

adb shell tcpdump -s 10000 -w /sdcard/capture.pcap

52、状态信息,里面包含有dmesg,dumpstate和dumpsys

adb bugreportbugreport.log

53、kernel的log凡是跟kernel相关的,比如driver出了问题(相机,蓝牙,usb,启动,等等吧)

adb shell dmesg ldmesg_kernel.log

54、dumpstate是系统状态信息,里面比较全,包括手机当前的内存信息、cpu信息、logcat缓存,kernel缓存等等 。

adb shell dumpstate

55、关于系统service的内容都在这个里面

adb shell dumpsys

56、显示内存信息

adb shell dumpsys meminfo system

关于安卓adb命令大全和安卓adb命令 打开调试的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

标签列表