导航:首页 > 程序命令 > androidadb命令大全

androidadb命令大全

发布时间:2023-04-10 20:31:53

Ⅰ adb 简介及常用命令

adb全称(android Debug Bridge),它是一个通用命令行工具,它可以做为Android与PC端连接的一个桥梁,所以adb又称为Android调试桥,用户可以通过adb在电脑上对Android设备进行全面操作,比如安装和调试应用,操作文件的传输等。

首先用户启动一个adb客户端时,此客户端先检查是否存在已运行的adb服务器进程。如果没有,它将启动一个服务器进程,当服务器进程启动时,adb服务器就会绑定本地的TCP端口5037并监听adb客户端发来的命令,使用的adb客户端都使用端口5037与adb服务器进行对话的。接着服务器将所有运行中的模拟器或设备实例进行连接。它通过扫描所有5555到5585范围内的奇数端口来定位所有的模拟器或设备。一旦服务器找到了adb守护程序,将建立一个到该端口的连接。
客户端发送的命令分为三种:

输出状态:

adb install安装原理过程:

Android系统的日志分为两部分:底层的linux内核日志输出到/proc/kmsg, Android日志输出到/dev/log。Android的Log等级通常有六类,按照日志级别由低到高分别是:Verbose、Debug、Info、Warning、Error、Assert。

Ⅱ Android—ADB命令

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

adb shell mpsys activity | findstr "mFocusedActivity"
或者 adb shell mpsys window w | findstr / | findstr name=
2、查看Activity的任务栈:

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

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

aapt mp badging E:\apk\es3.apk
5、显示accounts信息:

adb shell mpsys account
5、显示CPU信息 :

adb shell mpsys cpuinfo
查看CPU使用信息

adb shell top -n 1 -d 0.5 | findstr proc_ id
6、显示键盘,窗口和它们的关系

adb shell mpsys window
当我们需要知道设备的分辨率时

adb shell mpsys window displays
查看UI绘制的各个层级信息

adb shell mpsys SurfaceFlinger
7、显示wifi信息

adb shell mpsys wifi
8、电量信息及CPU 使用时长

adb shell mpsys batteryinfo $package_name
9、获取安装包信息

adb shell mpsys package packagename
10、每个应用的启动次数和时间

adb shell mpsys usagestats
11、显示状态栏相关的信息

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

adb shell mpsys meminfo
得到com.teleca.robin.test进程使用的内存的信息 adb shell mpsys meminfo com.teleca.robin.test
13、磁盘相关信息

adb shell mpsys diskstats
14、电池相关信息

adb shell mpsys battery
15、显示Alarm信息

adb shell mpsys alarm
统计系统耗电量

adb shell mpsys batterystats
设置线程的优先级

adb shell mpsys 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 time>app.log
49、打印射频相关的log,SIM STK也会在里面,modem相关的ATcommand等,当然跟QXDM差的很远了

adb logcat -b radio -v time> radio.log
50、打印系统事件的日志,比如触屏事件

adb logcat -b events -v time
51、tcpmp 是很有用的,对于TCP/IP协议相关的都可以使用这个来抓

adb shell tcpmp -s 10000 -w /sdcard/capture.pcap
52、状态信息,里面包含有dmesg,mpstate和mpsys

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

adb shell dmesg > ldmesg_kernel.log
54、mpstate是系统状态信息,里面比较全,包括手机当前的内存信息、cpu信息、logcat缓存,kernel缓存等等 。

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

adb shell mpsys
56、显示内存信息

adb shell mpsys meminfo system

Ⅲ 常用的安卓手机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 mp app包名 列出app的相关信息,类似获取Manifest文件内容

-查看前台 Activity

adb shell mpsys 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 mpsys 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 mpsys package +第三方包名(com.txznet.webchat)

Ⅳ 实战——Androidadb常用命令详解

ADB 全称Android Debug Bridge 是一个功能非常强大的工具,它位于Android SDK安装目录的platform-tools 子目录下,ADB工具即可完成模拟器文件与电脑文件的相互复制,也可安装APK应用,甚至可以直接切换到Android系统中执行部分Linux命令

1、查看当前运行的模拟器,设备:

    adb devices

2、切换adb shell终端为root用户:

    adb root

3、链接adb tcp接口或者usb串口:

    adb connect  192.168.10.252:5555  (tcp 5555端口)

    adb connect 93048d8f

4、启动shell

    adb -s  192.168.10.252:5555 shell 

    如果adb devices 下只有一个设备则只樱型需要:

    adb shell 即可

5、安装apk文件

    adb -s  192.168.10.252:5555 install [-r] [-s] [-t]<file>

    -r  强制安装

    -s 标示将APK包安装到SD卡上 默认是将APK安装到内部存储器上

    -t  如果 团返  报错 Failure [INSTALL_FAILED_TEST_ONLY: installPackageLI] 可以使用该参数

6、卸载apk

    adb uninstall [-k] <package>

     -k 标示只删除该应用程序,但保留该程序素有的数据和缓存目录。

7、重新挂载文件系统,用来可以读写system等目录

    adb -s 192.168.10.252:5555 remount

or

    mount -o remount rw/dev/block/mtdblock0/system /

8、复制文件到手机

    adb push a.txt /sdcard/

9、拷贝文件到电脑

    adb pull /sdcard/xyz.txt d:/

10、重启设备

     adb -s 192.168.10.252:5555 reboot

11、重启设备到bootloader模式

     adb -s 192.168.10.252:5555 reboot bootloader

12、启动指定的app的页面  

    adb -s 192.168.10.252:5555 shell am start -n com.android.settings/.Settings

    com.android.settings 应用程序的包名

    .Settings 类名(Activity)

13、模拟点击坐标 

    adb -s 10.0.0.245:5555 shell input tap 250 500    

    x:250 px   Y:500 px

14、滑动触摸事件

    adb -s 10.0.0.245:5555 shell input swipe 200 500 400 500

    #向右滑塌颂饥动200像素

15、修改屏幕尺寸

    adb -s 10.0.0.245:5555 wm size 1080x1920 

     #修改屏幕尺寸为1080x1920

    adb -s 10.0.0.245:5555 wm size 

     #查看屏幕默认尺寸

Ⅳ 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 mpsys activity activities //查看activity信息

adb shell mpsys activity |findstr mResumedActivity //获取当前activity信息

adb shell mpsys window windows | findstr “Current” //查看当前app窗口activity

adb shell //进入设备内部

cd //切换目录

pwd //查看当前路径

ping //查看网络连接

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

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

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

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

pm uninstall PackageName //卸载APK

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

pm clear PackageName //清除APK缓存

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

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

mpsys 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 http://www..com //拉起网络

am start -n om.android.xxx/.WelcomeActivity --es actionUrl "http://sns.is.xxxxx.com/CCTV/index.html?action=detail&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 "proct" //查看设备信息

exit //退出shell交互模式

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

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

adb shell mpsys 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 mpsys battery //获取电池信息

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

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

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

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

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

adb shell mpsys 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 mpsys cpuinfo |findstr com.android.xxx //查看指定APK CPU

mpsys 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

Ⅵ adb 常用命令

1、adb shell am force-stop  后跟包名,结束应用

2、adb install +包名       adb安装apk (覆盖安装是使用 -r 选项)

3、adb uninstall +包名      adb卸载apk

      adb uninstall -k cnblogs.apk   卸载app但保留数据和缓存文件

4、adb reboot       重启Android设备

5、adb devices      获取连接的设备列表及设备状态

6、adb push (PC到Android设备)

      例:adb push E:\0713\ellip_factroy__debug.apk storage/self/primary

7、adb pull(Android设备到PC)

      例:adb pull /storage/self/primary/EL_v3.0.0.6_release.apk E:\0713

8、adb shell pm list package      列出所有的应用的包名 (-s:列出系统应用  -3:列出第三方应用 -f:列出应用包名及对应的apk名及存放位置  -i:列出应用包名及其安装来源)

9、input : 向 Android 设备发送按键

      1)adb shell input keyevent + 按键事件   发送按键事件 例如:adb shell input keyevent KEYCODE_HOME 模拟按下Home键

      2)3 adb shell input tap +触摸事件的位置 , 对屏幕发送一个触摸事件 例如:点击屏幕上坐标为 500 500 的位置(adb shell input tap 500 500)

     3)adb shell input swipe   滑动事件  例如:从右往左滑动屏幕 (adb shell input swipe 800 600 100 600)

10、screencap 截图命令  adb shell screencap -p /sdcard/qq/1.png

11、screenrecord 录屏命令 adb shell screenrecord /sdcard/qq/1.mp4,执行命令后操作手机,ctrl + c 结束录制

12、clear 清除应用数据   adb shell pm clear com.

13、复制、删除 、查看文件、新建文件夹

        adb shell进入Android Linux命令中,

        复制cp: cp -f /sdcard/qq/1.png /sdcard/aa

        删除文件rm:rm  /sdcard/qq/1.png

        删除文件夹rm -r:rm  -r /sdcard/qq

        查看文件cat:cat /sdcard/qq/1.txt

        新建文件夹:mkdir /sdcard/cc

                              adb shell mkdir -m 777 /sdcard/cc   创建文件夹cc并给文件夹赋予读写执行的权限

                              adb shell mkdir -p/sdcard/Download/Demo/test1,如果Demo目录不存在,执行该条命令会创建Demo目录和其子目录test1

         新建文件:touch /sdcard/cc/1.txt   

          移动文件:adb shell mv /sdcard/Download/test1.log  /sdcard/Download/Demo/

           重命名:adb shell mv /sdcard/Download/Demo/test1.log  /sdcard/Download/Demo/test.lg

14、adb logcat > D:\log.txt 将日志打印到电脑上

15、获取手机内部存储信息: adb shell df /data

        获取sdcard存储信息:adb shell df /storage/sdcard

Ⅶ Android手机软重启adb命令是什么

运行设备的shell(命令行)。

管理模拟器或设备的端口映射。

计算机和设备之间上传/下载文件。

将本地apk软件安装至模拟器或android设备。

ADB一个 客户端-服务器端 程序, 其中客户端是用来操作的电脑,服务器端是android设备。

(7)androidadb命令大全扩展阅读

1、 查看设备 *adbdevices。这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示。

2、 安装软件:adbinstall <apk文件路径>。

这个命令将指定的apk文件安装到设备上。

3、 卸载软件

adbuninstall <软件名>。

adbuninstall -k <软件名>。

如果加 -k 参数,为卸载软件但是保留配置和缓存文件。

Ⅷ ADB常用命令

Android 调试桥 (adb)  ,可与设备进行通信。adb 命令可用于执行各种设备操作(例如安装和调试应用),并提供对 Unix shell(可用来在设备上运行各种命令)的访问权限。它是一种客户端-服务器程序,包括以下三个组件:

客户端: 用于发送命令。客户端在开发机器上运行。可以通过发出 adb 命令从命令行终端调用客户端。(可以通过它对Android应用进行安装、卸载、调试)

PC上的手机助手基本都是通过adb命令去完成的。有时候装了这类手机助手的话,它自带的adb程序可能会与Android SDK下的adb程序产生冲突,5037端口被占用,导致adb命令无法连接到设备。Windows下通过netstat -ano|findstr "5037"

守护程序 (adbd): 用于在设备上运行命令。守护程序在每个设备上作为后台进程运行

执行adb shell ps | grep adbd, 可以找到该后台进程,Windows使用findstr替代grep.

adb nodaemon server

服务器(Service): 用于管理客户端与守护程序之间的通信。服务器在开发机器上作为后台进程运行

adb服务启动后,Windows可以在任务管理中找到adb.exe; linux ps -ef | gref adb 可以查看service

一般都是通过这样子的格式 adb [-d|-e|-s <设备序列号>] <子命令>

通常只有一台设备就忽略 [-d|-e|-s ] 这一部分

这里介绍一些常用的命令:

获取设备列表及设备状态

获取设备的状态

注意:设备的状态有 3 钟,device , offline , unknown

device:设备正常连接

offline:连接出现异常,设备无响应

unknown:没有连接设备

 结束 adb 服务

 启动 adb 服务

注意:通常两个命令一起用,有时候我们开启server会失败,这是因为我们装了的手机助手,豌豆荚或者其他软件自带有自己的adb,导致端口冲突开启失败。一般在连接出现异常,使用 adb devices 未正常列出设备, 设备状态异常时使用 kill-server,然后运行 start-server 进行重启服务。

打印 Android 的系统日志

 打印 mpsys、mpstate、logcat 的输出,也是用于分析错误输出比较多

打印日志后重定向到一个文件中

 安装应用,覆盖安装是使用 -r 选项

注意:有些adb版本无法支持安装中文的apk

查看手机应用包名

查看应用对应的apk文件在手机上的安装位置则可以在上面的命令后加-f参数

卸载应用,后面跟的参数是应用的包名,请区别于 apk 文件名

'-k' means keep the data and cache directories , -k 选项,卸载时保存数据和缓存目录

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

adb pull /sdcard/test.txt C:\Users\Administrator\Desktop\log

推送本地文件至 Android 设备

获取连接到的手机的序列号

获取设备的连接状态

等待设备连接成功

该命令将会阻塞一直到默认连接的那部机器状态变为device,也就是连接成功。

其实adb shell命令就是调用的是Android设备中的system/bin目录下的命令。

Android的内核本身就是Linux,所以Android本身也支持Linux命令,但是因为是手机系统,所以进行了一定的删减,部分命令不支持,而不支持的部分,我们可以通过安装busybox这个软件进行。

如何在手机中执行Shell命令?

  每次都加上adb shell来进行命令的发送与执行

 先通过adb shell进入手机Shell执行状态,然后直接输入Linux命令。

使一个apk处于禁用状态,相当于卸载了:

其中 PACKAGE_OR_COMPONENT的格式是 package/class, 如 com.UCMobile/.main.UCMobile

eg:adb shell su disable com.UCMobile/.main.UCMobile

同时我们在手机上发现,UC浏览器的图标不见了

让一个apk从禁用状态恢复过来

其中 PACKAGE_OR_COMPONENT的格式是 package/class, 如 com.UCMobile/.main.UCMobileeg:

adb shell su enable com.UCMobile/.main.UCMobile

同时我们从手机上发现,UC浏览器的图标又出现了。

查看一个apk所在的路径

adb shell pm path com.UCMobile

查看手机中装的所有的包

屏幕开始录像并且储存到/sdcard中,同时名字为demo.mp4

录屏设置时长10s,命名为demo.mp4

注意:现在仅支持一部分手机录屏,不支持的手机会出现以下提示

解决方法:

安装了scrcpy之后,只需要输入如下命令,即可录取指定设备的屏幕

scrcpy -s device --render-expired-frames -Nr ./demo.pm4

--render-expired-frames:尽可能最大帧率

-N:不在PC端展示

-r:录制mp4/mkv文件

关闭设备请求,开启设备

设备关机以及重启

pm(package manager)可以获取一些安装到Android设备上的app的信息

pm list packages 用法:list packages [ options] filter

获取所有的应用的包名

列出系统应用

列出第三方应用

查看它们的关联文件

adb shell pm list package -f

查看软件包的安装来源

pm mp 包名 很多mp信息

安装应用

apk如果在电脑用 adb install 

如果在Android设备上用 adb shell pm install

卸载应用,同adb uninstall ,后跟包名

清除应用数据

am(activity manager,字面意思就跟activity有关,大家都知道Android的界面都是由一个个activity显示的)

启动一个Activity

获取到package和launch_activity

AndroidSDK中aapt工具,检索命令结果,可以获取到package和launch_activity

这里涉及到一个点,如何找到程序的入口,首先你要知道是哪个activity才能启动;

启动华为系统相机

打开音乐播放器

播放指定音乐:

先停止目标应用,再启动

等待应用完成启动

启动网页(android.intent.action.VIEW具体参考Android官网)

结束应用

input

模拟输入,向获得焦点的EditText控件输入内容

返回主界面

发送一个点击操作的指令,参数是<x> <y>坐标

从左往右滑动屏幕, /从 100 100 经历300毫秒滑动到 200 200

长按操作,在 100 100 位置长按 1000毫秒

Ⅸ 超实用的adb与adb shell常用命令汇总

adb(Android Debug Bridge),SDK自带的工具,可实现桥接功能,实现PC和android设备的交互

adb shell:基于Android linux系统操作,放在安卓设备的system/bin目录下,手机端的命令

一:adb常用命令

1. PC连接android设备

(PC与android设备连接同一个wifi,或处于同一个局域网)

连接:adb connect ip:5555

断开连接:adb disconnect ip

查看连接设备的信息:adb devices

获取设备的状态:adb get-state

2. 重启adb server

打开adb服务:adb start-service

关闭adb服务:adb kill-service

3. 安装卸载软件

安装:adb install apkpath(某个apk)

adb install -r :强制安装

卸载: adb uninstall package(可用adb shell pm list packages查看包名)

4. 打印日志

打印android系统日志:adb logcat

将日志打印并保存指定文件夹:adb logcat > /Users/apple/Desktop/log.txt

终止进程:control+C

打印mpsys,mpstate,logcat的输出,用于分析错误:adb bugreport

5. PC与android设备上文件复制

android设备上文件复制到PC上:adb pull

PC上文件推至android设备:adb push 

6.重新挂载system分区为可写,需要root权限./system分区默认挂载为只读,但有些操作比如给android系统添加命令,删除自带应用等需对系统进行写操作,得重新挂载为可写

adb shell

su

或:adb root

adb remount 重新挂载文件系统,获得可写的权限(默认情况是只有可读权限的),使用adb remount 的前提是要有root权限

7. 删除系统应用

adb root

adb remount

adb shell

cd system/app

rm *apk

二:adb shell命令

adb shell 进入系统子目录,exit 退出

1. pm命令

列出系统应用的所有包名:adb shell pm list packages 可用grep来过滤:adb shell pm list packages | grep 关键字

清除应用数据与缓存:adb shell pm clear <packagename>

2. am命令

启动应用:adb shell am start -n com.xxx.xxxxxxx|xxx.Activity(可通过adb shell mpsys activity activities | grep mFocusedActivity查看

强制停止应用:adb shell am force-stop <packagename>

3. input命令

模拟点击事件,点击坐标点(x,y):adb shell input tap x y

模拟滑动事件,从(x1,y1)到(x2,y2):adb shell input swipe x1 y1 x2 y2

发送文本内容:adb shell input text

模拟按下home:adb shell input keyevent KRYCODE_HOME

4. screencap命令

截屏:adb shell screencap

5. 查看网络状态命令

查看当前网络状态:adb shell netstat

通过配置文件配置和管理网络连接:adb shell netcfg

查看网络信息:ifconfig

测试网络联网状态:ping

5.其它相关命令

查看当前终端中进程:adb shell ps

获取cpu信息:adb shell cat /proc/cpuinfo

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

查看屏幕分辨率:adb shell wm size

查看设备ip地址:adb shell ifconfig | grep Mask

查看实时资源占用情况:adb shell top

Ⅹ 常用的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 mpsys

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

参考下表:

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调试桥: http://www.iteye.com/topic/260042

2.Android性能分析工具mpsys的使用: http://www.open-open.com/lib/view/open1405061994872.html

3.adb shell 中的am pm命令: http://www.android100.org/html/201312/09/4957.html

4.adb shell 启动应用程序的方法: http://blog.chinaunix.net/uid-26997997-id-3350449.html

5.Monkey压力测试详解: http://blog.csdn.net/huangbiao86/article/details/8490743

阅读全文

与androidadb命令大全相关的资料

热点内容
服务器为什么一直掉线 浏览:745
主次梁箍筋加密和负筋箍筋 浏览:349
at命令win 浏览:146
个人所得税app的设置在哪里 浏览:138
linux空值 浏览:141
剪力墙钢筋用不用加密区 浏览:982
哪里app可以上高中生物课 浏览:474
cad粗糙度快捷键命令大全 浏览:523
腾讯云服务器无法运行软件 浏览:344
奔跑吧哪个app 浏览:99
哪个app听音乐最好 浏览:283
考研英语2真题pdf 浏览:701
烟台编程积木教育环境好不好 浏览:216
python优秀代码 浏览:622
androidtop命令 浏览:457
你平时怎么排解压力 浏览:70
表格中的文件夹怎样设置 浏览:478
em78单片机 浏览:962
splitjava空格 浏览:248
电脑怎么谷歌服务器地址 浏览:515