您的位置:首页 > 其它

adb常用命令记录

2018-01-15 21:56 323 查看
1、常用命令
1、adb程序位于android studio安装文件的android-sdk-windows→platform-tools→adb.exe
2、adb程序是不可以直接双击的,正确的操作方法应该是,打开cmd命令窗口,进入adb.exe所在目录(例如,adb在d盘,我们直接输入D:,再输入cd d:。。。。。。进入adb所在目录),最后输入adb命令,注意,在此过程中,手机应该开启USB调试模式;也可以通过配置环境变量,将adb加入path,这样可以在cmd窗口直接输入adb运行
1)netstat -ano :列出所有端口的情况
2)netstat -aon|findstr "XXX" :查看被占用端口对应的PID,这里XXX是指端口号

3)tasklist|findstr "YYY" :查看PID“YYY”对应哪个进程,或者打开任务管理器,切换到进程选项卡,在PID一列查看YYY对应的进程是谁
4)结束该进程:taskkill /f /t /im ZZZ.exe(其中,/f表示制定强制终止进程,/t表示终止指定的进程和它的子进程,/im表示要终止的进程的名称),或者在任务管理器中,查找ZZZ.exe然后结束该进程
5)当有进程占用此端口的时候,例如手机助手、豌豆荚等应用,可以清除数据,强行停止,或者直接看哪个进程占用5037端口,直接kill掉此进程,重新启动,就可以
6)adb shell getprop | findstr “android”:查看已连接手机的aid
或者用 adb shell getprop net.hostname
7)利用adb命令安装apk程序:首先将apk文件放入android-sdk-windows\platform-tolls\ 下面,然后直接在cmd命令行输入:
adb install XXX.apk 回车,最后安装完成
或者直接:adb install 路径+XXX.apk
adb install <path_to_apk>

adb install [-l] [-r] [-s] <file> - push this package file to the device and install it
('-l' means forward-lock the app)
('-r' means reinstall the app, keeping its data)覆盖安装
('-s' means install on SD card instead of internal storage)安装在SD卡而不是内存中

8)利用adb命令卸载程序:uninstall

adb uninstall <软件名/包名>
adb uninstall -k <软件名/包名>

如果加 -k 参数,为卸载软件但是保留配置和缓存文件
9)打开adb server:start-server
10)关闭adb server服务器:kill-server

11)截图命令 adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png
12)adb logcat -c
清除原有日志记录
13)adb install *.apk
adb uninstall [-k] *.apk (k表示保留数据与配置)
14)adb kill-server (关闭adb连接)
15)
adb shell getprop net.hostname 查看aid
16)
如何用adb获得手机里面某个apk的应用信息、版本信息
adb shell dumpsys package com.examle.xx
adb shell dumpsys 列出所有
17)
如何用adb启动apk
adb shell am start -n breakan.test/breakan.test.TestActivity
18)查看手机上所有的apk包名
adb shell pm list packages
如果想知道对应的apk文件在手机上的安装位置,可以在上述命令后面加-f
adb shell pm list packages -f
19)在控制台输入命令$adb shell pm
可以看到adb shell pm的相关用法,详细信息请自己看输出
要看一个apk文件的相关信息最简单实用的方法是:
aapt dump badging [yourapp.apk]
20)查看包名
adb shell pm list packages | findstr "XXX" 查看包含关键字XXX的包名
21)断开adb shell 连接
exit/quit/bye
22)monkey的命令
adb shell monkey 200 /后面的数字表示200个随机事件
指定在某个应用下跑monkey
adb shell monkey -p com.XXX.package 200 /限制在com.XXX.package
包中跑200个随机事件
也可以写monkey脚本,指定发生事件
写好monkey脚本(eg:helloMonkey)后,存入手机sdcard中
adb push helloMonkey /sdcard/
然后运行我们自己写的脚本
adb shell monkey -v -f /sdcard/helloMonkey 1 (1表示运行次数)
23)adb shell dumpsys meminfo com.XXX.package 查看某个app的状态
adb shell dumpsys notification 查看通知栏运行状态(情况)
24)查看adb是否有root权限
adb root
25)adb remount 重新装载android文件系统
26)抓取某个APP的包
adb shell dumpsys package com.XXX.package 找出codePath复制出来,eg:/data/app/com.XXX.android-2
将此包pull出来,放到当前目录,命名为1.apk
adb pull /data/app/com.XXX.android-2/base.apk ./1.apk
27)停包(将某个应用停包)
adb shell am force-stop com.XXX.android
28)Logcat Command-line Tool(logcat命令行工具)

logcat是一个命令行工具,它能够转储(dump)系统日志信息,包括系统抛出异常时的堆栈跟踪。下面介绍命令行的用法(书写方式,即语法)
[adb] logcat[<option>]...[<fliter-spec>]... 注意这里的选项和过滤条件
利用adb查看log,切换至 你的SDK的platform-tolls目录下,然后执行:$adb logcat
同样,你可以建立一个到设备的shell连接,然后执行:$adb shell
#logcat
eg:截取日志按照时间详细显示,并且输出到本地
adb logcat -v time com.cleanmaster.mguard >d:\1.txt 将日志输出到本地
29)输出带有标识符的日志到本地
adb logcat -v time | findstr @@@ >d:\1.txt (这里,@@@是该日志的标签tag值,按照此字符串搜索)
adb logcat -v time | findstr @@@ //实时查看带有tag为@@@的日志
搜索多个tag的日志如下:
adb logcat -v time | findstr "aaa bbb" >new.txt //表示可以查看带有字符串aaa或bbb的日志记录
adb logcat -v time | findstr /c "aaa bbb" //表示查看带有字符串"aaa bbb"的日志,注意/c的作用
30)查看servicecs使用细节
adb shell dumpsys activity services
31)
查看activity使用细节
adb shell dumpsys activity
32)查看当前系统信息:adb shell dumpsys+指定的service name
可以用adb shell service list查看运行的services信息
adb shell dumpsys后加service name 就可查看相应service信息
adb shell dumpsys activity
adb shell dumpsys cpuinfo
adb shell dumpsys battery
adb shell dumpsys window(查看已经存在的窗口信息,eg:toast、悬浮窗等)
33)查看traces记录(一般用于ANR异常)
adb shell cat /data/anr/traces.txt >> D:\traces.txt
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  安卓