apk机器(手机,打卡机,录像机)连接电脑 常用adb操作命令

adb简介

adb的全称为Android Debug Bridge,就是起到调试桥的作用。它就是一个命令行窗口,用于通过电脑端与模拟器或者是设备之间的交互。

借助adb工具,我们可以管理设备的状态。还可以进行很多手机操作,如安装软件、系统升级、运行shell命令等等。

其实简而言说,adb就是连接Android与PC端的桥梁,可以让用户在电脑上对手机进行全面的操作。说白了就是机器的debug工具。

adb常用命令

1.查看当前已连接的设备

adb devices
主要作用:查看当前已连接的设备,连接到计算机的Android设备或者模拟器将会以列表的形式显示。

输出格式:[serialNumber][state]

l 如果当前没有模拟器或者设备运行,adb则会返回List of devices attached为空

l offline:表明设备没有连接到计算机或无响应

l device:设备已经连接到计算机。注意,该状态并不表示Android设备可用,当Android设备处于启动阶段时,若连接成功也会返回该状态。

C:\Users>adb devices
List of devices attached
2cc1bf66        device

2.关闭和启动adb服务

adb kill-server //关闭adb服务
adb start-server //启动adb服务

3.安装app

adb install <apk文件路径>
常用参数:

adb install –r 覆盖安装
adb install –s 安装到SD卡
adb install –rs覆盖安装到SD卡
adb –s <serial number> install 选定设备安装
当有多个设备连接时,可以用下面的命令来直接选定设备进行安装。
adb [-d|-e|-s <serial number>] install <path_to_apk>
d:真机(多个设备中只有一个真机时适用)
e:模拟器(多个设备中只有一个模拟器时适用)
s:序列号

adb install test.apk //安装
adb install -r ./test.apk //覆盖安装 adb -d install -r ./test.apk //真机覆盖安装 adb –s emulator-5556 install ./test.apk

4.卸载APP

adb uninstall <包名>

主要作用:卸载设备上的指定程序

adb uninstall –k <包名>
adb shell pm uninstall –k <包名>

5. adb push/pull  复制

1)adb push <本地路径><设备路径>

把pc上的文件或文件夹复制到设备中。

adb push /home/test.apk /sdcard/

2)adb pull <设备路径><本地路径>

把设备上的文件或文件夹复制到电脑

手机复制到电脑命令:adb pull (文件手机路径) (电脑保存路径)

举例:

adb pull /sdcard/log/test.xls /home/

Pull命令后可不输入本地地址,不输入时文件会复制到当前终端所在目录

6.adb 操作日志

adb logcat

主要作用:查看日志,在命令行中显示调试信息
adb logcat >> <指定文件路径> 将logcat信息保存在指定文件中
>> 追加
> 覆盖

//格式1:打印默认日志数据,实时
adb logcat 

//格式2:需要打印日志详细时间的简单数据
adb logcat -v time

//格式3:需要打印级别为Error的信息
adb logcat *:E

//格式4:需要打印过滤MainActivity的日志
adb logcat | grep MainActivity

// 其他,清除缓存日志
adb logcat -c
// 保存日志
adb logcat -d > logcat.txt    
// 结束实时日志,键盘操作
Ctrl+c  
//格式4:清空旧日志
adb logcat -c > log.txt  
// 发生Native Crash 时,抓取错误报告
adb logcat -b crash

//将日志保存到电脑固定的位置,比如D:\log.txt
adb logcat -v time >D:\log.txt

 

adb logcat -d > logcat.txt  使用logcat命令将日志导出到文件中。打开终端或者命令行工具,然后输入该命令

这条命令会将当前设备的logcat日志输出到名为logcat.txt的文件中。-d参数是用来确保日志输出到文件中时是从开始到现在的(而不是循环缓冲区的最后部分)

 

adb logcat -d *:E > logcat.txt //导出特定标签(tags)或优先级(priorities)的日志,日志级别(如V代表Verbose,D代表Debug,I代表Info,W代表Warning,E代表Error)。

adb logcat //查看近期所有日志,打印默认日志数据
adb logcat --help  //查看帮命令
adb logcat -v time  //打印时间
adb logcat -v color   //使用不同的颜色来显示每个优先级
adb logcat -f <filename>    //将日志输出到文件,地址为手机端路径
adb logcat > log.log    //保存日志到PC上
adb logcat -c   //清理已存在的日志


过滤不同优先级的log:adb logcat *:W(过滤比W优先级低的log)
标记是一个简短的字符串,用于标识原始消息的来源(例如“View”来源于显示系统)。
优先级是下面的字符,顺序从低到高:
V—Verbose 明细(最低优先级)
D—Debug 调试
I—Info 信息
W—Warm 警告
E—Error 错误
F—Fatal 严重错误
S—Silent 无记载(最高优先级,没有什么会被记载)

保存抓取所有LOG命令:adb logcat –v time > D:\log.txt

抓取应用层LOG命令:adb logcat –b main –v time >D:\main.txt

抓取死机、重启LOG命令: adb shell dumpsys > d:/dump.txt 

 

日志中文乱码问题通常是因为CMD窗口使用的字符编码与文件或输出内容的编码不一致导致的。

解决方法:

更改CMD窗口的字符编码:

打开CMD窗口,输入 chcp 65001 将编码改为UTF-8。

7.adb shell

由于Android是基于Linux内核的操作系统。因此,在Android上可以执行shell命令。
常用命令如下:

ls    查看文件夹
cd    改变目录
cat <文件名>    查看文件内容
rm    删除文件
mkdir <文件夹>    新建文件夹
cp    复制文件到另一目录
exit   退出shell命令
adb shell <command>    直接运行设备命令
adb shell su –c “<command>”    直接运行root权限命令

8.adb shell am

am start –n <包名>/<包名>.<Activity名>   启动程序
am force-stop <包名>    强制停止程序
am kill <包名> 杀死与包名有关的后台进程,不影响用户体验,相当于一般的清理内存功能
am kill-all    杀死所有后台进程

9. adb shell pm

pm path <包名>   查看apk安装在手机后的路径
pm uninstall [-k] <包名>  卸载程序(-k:保留配置文件)
pm clear <包名>    清除应用缓存数据

 

10. 其他常用命令

adb help    显示帮助信息
adb version   显示adb版本
adb reboot    重启手机
adb shell am broadcast -a android.intent.action.MASTER_CLEAR(恢复出厂)
adb shell dumpsys window | grep init 查看手机的分辨率
adb logcat -s ActivityManager        Activity的启动时间

 详细出自,还有monkey压力测试:https://blog.csdn.net/mafei852213034/article/details/72757679

posted @ 2024-08-22 11:36  青城杂文录  阅读(27)  评论(0编辑  收藏  举报