当前位置:主页 > 移动开发 > Android代码 >

android中的adb命令学习

时间:2023-02-07 09:49:25 | 栏目:Android代码 | 点击:

adb是什么

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

adb有什么用

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

adb常用命令

查看当前连接的设备

adb devices

多个设备操作,带上设备号

adb -s 设备号 其他命令

查看顶部Activity

adb shell dumpsys activity | findstr "mFocusedActivity"

查看日志

adb logcat    //查看所有日志

安装软件

adb install xxx.apk 
adb install -r xxx.apk //覆盖安装,保留数据和缓存文件,重新安装,升级
adb install -r -t xxx.apk
adb shell pm install +apk存放路径   
//安装应用(目标 apk 存放于PC端,用 adb install 安装   
//目标 apk 存放于Android设备上,用 pm install 安装)

卸载

adb uninstall xxx.app
adb uninstall -k xxx.app //保留数据卸载,卸载app但保留数据和缓存文件

卸载WPS

push

adb push 本地文件名 手机端路径

pull

adb pull 手机端路径 本地文件路径

查看所有APP

adb shell pm list packages
adb shell pm list packages -f  //还能显示出路径

截屏

adb shell screencap /sdcard/screen.png

录屏

adb shell screenrecord /sdcard/demo.mp4

从电脑路径copy文件到手机

adb push crime.apk  /sdcard/data/data

清空App数据

adb shell pm clear com.example.packagename 

向屏幕上输出一些信息

adb shell input text "insert%stext%shere"  //%s表示空格,不能输出中文

模拟触屏

adb shell input tap 500 1450 //在屏幕上(500,1450)的坐标点上进行一次点击
adb shell input keyevent + 按键事件  // 发送按键事件 例如:adb shell input keyevent KEYCODE_HOME 模拟按下Home键

模拟滑动屏幕事件

adb shell input swipe 100 500 100 1450 100   //从屏幕坐标(100,500)开始,滑动到(100,1450)结束,整个过程耗时100ms

查看当前内存占用

adb shell cat /proc/meminfo

查看CPU和内存占用

adb shell top

查看耗电情况

//保存到xxx.txt
adb shell dumpsys batterystats > xxx.txt

查看系统设置的闹钟

adb shell dumpsys alarm 

文件操作

adb shell ls [-al] 	//文件和文件夹的详细信息
adb shell cd <folder>  //进入文件目录
adb shell cat <filename> //查看文件  
adb shell du -sh *  //查看目录下文件大小

Root判断

#代表已经root了,$代表没有root权限

获取Root权限

adb root
---su root

连接设备

adb connect + [设备ip] 10.0.0.4:5555

重启设备

adb reboot

获取设备连接状态

adb get-state    //device:设备正常连接 , offline:连接出现异常,设备无响应 , unknown:没有连接设备

查看设备的后台 进程

adb shell ps

启动一个服务

adb shell am startservice

发送一个广播

adb shell am broadcast 

启动一个Activity

adb shell  am start +包名/.Activity (要启动的Activity)     
//启动一个 Activity (-s先停止目标应用,再启动  -w 等待应用完成启动  -a 启动默认浏览器打开一个网页
//adb shell am start -a android.intent.action.VIEW -d http://testerhome.com
adb shell dumpsys activity [<packagename>] //查看运行的activity
adb shell dumpsys activity services [<packagename>]  //查看运行的service

列出package的位置

adb shell pm path+包名     //列出对应包名.apk 位置

列出设备上输入法

adb shell ime list -s 

获取系统版本

adb shell getprop ro.build.version.release

获取系统api版本

adb shell getprop ro.build.version.sdk

获取相关制造商信息

adb shell getprop | grep "model\|version.sdk\|manufacture
r\|hardware\|platform\|revision\|serialno\|product.name\|brand"

获取系统相关信息

adb shell "cat /system/build.prop | grep "product""

获取型号

adb -d shell getprop ro.product.model

厂商

adb -d shell getprop ro.product.brand

序列号

有两种方式
adb get-serialno
adb shell getprop ro.serialno

获取MAC地址

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

获取内存信息

adb shell cat /proc/meminfo

存储信息

adb shell df
adb shell df /data  //内部存储信息

屏幕分辨率

adb shell "dumpsys window | grep mUnrestrictedScreen"

多个设备选择一个

adb -s 192.168.101.37:5555 shell + 操作

查看进程

adb shell procrank

关闭或者杀掉进程

adb shell kill 366

清除应用数据

adb shell pm clear com.baidu

CP复制文件

//adb shell 进入Android Linux命令中
cp -f system/app/Music/Music.apk /sdcard/Music.apk

删除文件

//adb shell 进入Android Linux命令中
rm  -r /mnt/sdcard/a.mp3 
//删除文件夹的时候需要加上-r参数 
cd dir 
rm *    删除dir中所有文件

cat 查看文件

cat  /sdcard/test.txt

查看进程的具体信息

//例如:1460是要查看的进程的PID
cat /proc/1460/maps     //查看进程的文件结构 
cat /proc/1460/status   //查看进程的状态

findstr和grep

//1)cmd下搜索包名为com.android.launcher3的进程 
adb shell ps|findstr /i “com.android.launcher3” 
//2)shell下面搜索 
//先使用adb shell进去,然后使用grep命令过滤 
ps | grep “com.linux.test”

您可能感兴趣的文章:

相关文章