adb 命令

这篇博客详细记录了adb(Android Debug Bridge)的常用命令,包括查看设备信息、进程状态、安装卸载应用、文件操作、权限获取、内存信息、日志记录等,是Android开发者日常调试工作的实用参考。
摘要由CSDN通过智能技术生成

adb常见命令(长期更。。。)

工作中遇到的adb命令,长期更新。。。



前言

工作中遇到的adb命令会逐渐记录下来,以飨读者。


# 一、adb是什么?

adb是什么?具体可以看鱼大佬的连接
ADB(android debug brige)安卓 调试 桥

ADB用一句话形容就是:ADB是我们用来操作(调试)android设备(比如android手机)的一套指令集。

二、常见的命令

1.命令行

代码如下(示例):

//001.查看mtk平台模组信息
adb shell cat data/vendor/camera/mtk*

//002.使用adb push命令的时候,有时候需要push到某个文件夹
//下面的内容到手机里面,我们一般会这样
adb push c:\xxdir\project /sdcard/xxxx
//这样会把project文件夹也push到手机里面,
adb push c:\xxdir\project\. /sdcard/xxxx
//这样的操作只是把project下面的文件push到xxxx下面,
//而不包括project文件夹

//003.查看各个进程那些没有被杀死
adb shell ps -elf | grep camshowmap pid

//004.重启手机
adb reboot 

//005.进入android boot界面
adb reboot bootloader 

//006离开android boot界面
fastboot reboot 

// adb手机权限获取
adb remount

//从android pull文件
adb pull /data/log/android_logs 电脑路径\
启动ADB    
adb start-server

停止ADB   
adb kill-server

查看帮助信息
adb help

列出手机装的所有apk包名
adb shell pm list packages

列出系统应用
adb shell pm list packages -s

列出第三方应用
adb shell pm list packages -3

使用grep过滤
adb shell pm list packages | grep qq

清除应用缓存信息
adb shell pm clear com.tencent.mobileqq

安装应用程序,锁定该程序
adb install -l qq.apk

安装应用程序,重新安装该程序
adb install -r qq.apk

安装应用程序,安装在SD卡内,而不是设备内部存储
adb install -s qq.apk

卸载应用程序
adb uninstall com.tencent.mm

卸载应用程序,不删除程序运行所产生的数据和缓存目录
adb uninstall -k com.tencent.mm

将手机设备中的文件copy到本地计算机
adb pull /sdcard/test.jpeg ./

将本地计算机的文件copy到手机设备中
adb push api_note /sdcard/

手机截屏
adb shell screencap -p /sdcard/screencap.png

查看指定包名应用的数据库储存信息(包括储存的SQL语句)
adb shell dumpsys dbinfo com.tencent.mobileqq

查看指定包的内存信息,通过包名
adb shell dumpsys meminfo com.tencent.mobileqq

查看指定包的内存信息,通过id(adb shell dumpsys activity top 可以获取id)
adb shell dumpsys meminfo id

查看指定包名应用的详细信息(相当于AndroidMainfest.xml中内容)
adb shell dumpsys com.tencent.mobileqq

查看当前应用的activity信息
adb shell dumpsys activity top

查看bug报告
adb bugreport

通过adb启动应用程序页面
adb shell am start -n com.tencent.mobileqq/.activity.LoginActivity@1c730155

强制停止应用有些时候应用卡死了,需要强制停止
adb shell am force-stop com.tencent.mobileqq

进入adb shell
adb shell

推出adb shell
exit

记录无线通讯日志
adb shell 
logcat -b radio

删除名字为xxx的文件夹及其里面的所有文件 
adb shell
rm -r xxx

删除文件xxx 
adb shell
rm xxx

删除xxx的文件夹
adb shell
rmdir xxx

进入系统内指定文件夹
adb shell 
cd /system/sd/data
ls

获取设备序列号
adb get-serialno

获取设备MAC地址
adb shell cat /sys/class/net/wlan0/address

获取设备型号
adb shell getprop ro.product.model

获取系统版本
adb shell getprop ro.build.version.release

获取屏幕分辨率
adb shell wm size

获取屏幕密度
adb shell wm density

获取CPU信息
adb shell cat /proc/cpuinfo

获取权限列表
adb shell pm list permissions -f

获取用户
adb shell pm list users -f

重启
adb reboot

备份所有应用
adb backup -all

备份单个应用
adb backup com.tencent.mobileqq

备份参数说明
adb backup -f mm.ab -noapk -noshared -nosystem com.tencent.mm
-f 用这个来选择备份文件存储在哪里,例如-f /backup/mybackup.ab将会使文件存储在根磁盘(Windows的C盘等等)下一个名为backup的文件夹里,并且备份文件名为mybackup.ab
-apk|-noapk 是否在备份里包含apk或者仅仅只备份应用数据,默认是-noapk
-shared|-noshared  这个参数用于决定是否备份设备共享的SD card内容,默认是-noshare
-all 这个参数是一种简单地表达“所有应用”的说法,备份整个系统
-system|-nosystem  这个参数决定-all标签是否包含系统应用,默认的是-system


使用run-as在非root情况获取沙盒数据(前提是开启debuggable模式)
adb shell
run-as com.tencent.mobileqq
cd /data/data/com.tencent.mobileqq
ls
cd databases
cat preferences.db > /mnt/sdcard/yourpackagename.db
将你要访问的package目录下的db文件拷贝到sdcard中,这样就可以正常访问了! 对文件进行增删。


查看当前进程的内存的加载情况
adb shell
cat /proc/7654/maps


查看当前应用使用的端口号信息
adb shell
cat /proc/14/net/tcp


查看进程的状态信息,通过该命令获取到当前进程的包名,PID,PPID等等重要信息
adb shell
cat /proc/14/status


查看一个dex文件的详细信息
dexdump [dex文件路径]




adb shell "run-aspackage.name chmod 666 /data/data/package.name/databases/file"
adb pull /data/data/package.name/databases/file .
adb shell "run-aspackage.name chmod 600 /data/data/package.name/databases/file"
adb exec-out run-as package.name cat databases/file > file

总结

长期更。。。 参考: https://www.cnblogs.com/sea-stream/p/14128179.html
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值