AndroidADB常⽤指令1、查看⽇志adb logcat
adb logcat    // 查看所有⽇志
adb logcat -c    // 清空已存在的log
adb logcat > temp.log // 查看所有⽇志并保存到temp.log⽂件中
adb logcat -v time | grep "AndroidRuntime"// 查看运⾏时崩溃信息
adb logcat -b events // 查看事件相关的log (-b代表缓存区)
adb shell dmesg  //内核⽇志
2、查看⼿机上的应⽤列表
adb shell pm list packages      //所有应⽤
adb shell pm list packages -s    //系统应⽤
adb shell pm list packages -3//第三⽅应⽤
adb shell pm list packages -f    //查看所有已安装的应⽤的包名
adb shell pm list packages | grep "changjl"//⽤grep精确匹配
查看应⽤版本号
如何做宫保鸡丁adb shell dumpsys package my.package | grep versionName
使⽤gerp 过滤可能会报’grep’ 不是内部或外部命令,也不是可运⾏的程序或批处理⽂件解决办法:
凡是有shell命令后⾯语句都要加“”,之后就可以正常运⾏了。
adb shell "dumpsys package my.package | grep versionName"
或者,将命令拆开:
adb shell
dumpsys package my.package | grep versionName
3、 获取⼿机型号与设备信息
adb shell
cat /system/build.prop | grep "product"// ⼿机型号与设备信息
adb shell getprop del    // 型号
4、通过dumpsys查询⼀些硬件使⽤情况
adb shell getprop ro.lease  // Android 系统版本
adb shell dumpsys cpuinfo  // 查看cpu信息
adb shell dumpsys battery  // 查看电池
adb shell dumpsys window    // 可以看到分辨率的信息
adb shell wm size          // 查看屏幕分辨率
adb shell wm density        // 屏幕密度
adb shell dumpsys window displays  // 显⽰屏参数
2020祝福语
adb shell dumpsys iphonesubinfo    // 在 Android 4.4 及以下版本可通过获取 IMEI
// android 5.0 及以上版本获取 IMEI
adb shell
su
service call iphonesubinfo 1
adb shell cat /proc/cpuinfo    // 也可以获取cpu信息
adb shell cat /proc/meminfo  // 内存信息
adb shell cat /system/build.prop  // 设备的更多硬件与系统属性
5、通过pm grant命令给App授予权限
adb shell pm grant application_package android.permission.CHANGE_CONFIGURATION
6、adb安装apk
adb install  (APK路径)// 安装apk
adb install -r (APK路径)// 强制安装
adb install -t (APK路径)// 允许测试包
adb install -d (APK路径)// 允许降级覆盖安装
adb install -l (APK路径)// 锁定应⽤程序
adb install -g (APK路径)// 为应⽤程序授予所有运⾏时的权限
adb install -p (APK路径)// 部分应⽤安装
adb install -s (APK路径)// 将应⽤安装在SD卡上
7、清除应⽤数据
adb shell pm clear (packagename)
8、AVC 权限打开和关闭(setenforce)
adb shell setenforce 0// 关闭,临时禁⽤掉SELinux,enforcing模式转permissive模式
adb shell getenforce    // 查看状态
9、截屏与录屏
adb shell screencap (⽂件保存路径)//截屏adb shell screenrecord (⽂件保存路径) // 录屏
10、fastboot指令什么是公司债
刷boot流程
adb reboot bootloader
fastboot flash boot  boot.img
fastboot reboot
fastboot的⼀些其他指令
fastboot flashing unlock    #6.0以上设备设备必须解锁,开始刷机(这个不同的⼿机⼚商不同)
fastboot erase {partition}  # 擦除分区
fastboot  erase  frp    # 擦除 frp 分区,frp 即 Factory Reset Protection,⽤于防⽌⽤户信息在⼿机丢失后外泄
fastboot  flash  boot  boot.img    # 刷⼊ boot 分区
fastboot  flash  system  system.img    # 刷⼊ system 分区
fastboot  flash  recovery  recovery.img    # 刷⼊ recovery 分区
fastboot flash all    #烧写所有分区,注意:此命令会在当前⽬录中查所有img⽂件,将这些img⽂件烧写到所有对应的分区中,并重新启动⼿机。
fastboot  format  data    # 格式化 data 分区
fastboot  flashing lock    # 设备上锁,刷机完毕
fastboot  continue    # ⾃动重启设备
fastboot reboot# 重启⼿机
fastboot reboot-bootloader# 重启到bootloader 刷机⽤
fastboot devices  ## 发现⼿机,显⽰当前哪些⼿机通过fastboot连接了
11、adb remount
adb remount //重新挂载⽂件系统,获得可写的权限(默认情况是只有可读权限的),使⽤adb remount 的前提是要有root权限
12、连接设备–wifi调试
adb connect 192.168.1.6
如果是USB连接,直接会连接ADB,如果是想通过⽹络连接(有线或者⽆线),则需要在同⼀个局域⽹,通过IP连接。上⾯192.168.1.61替换成想要连接设备的IP即可。
13、 删除系统应⽤
adb remount (重新挂载系统分区,使系统分区重新可写)。
adb shell
cd system/app/
ls
rm *.apk
ls命令可以查看⽂件夹下的所有⽂件
adb remount (重新挂载系统分区,使系统分区重新可写)。
adb shell
cd system/app/
rm -r xxxx    // 直接删除某系统应⽤所在⽂件夹,会删除⽂件夹内所有内容
14、pull和push⽂件
adb push  (源⽂件路径)(push的⽬标路径)
adb pull  (源⽂件路径)(pull的⽬标路径)
push 是将PC中的⽂件push 到Android设备中,pull是将android设备中的⽂件pull到PC。
15、 修改⽂件权限为最⾼
chomd 777⽂件名嫩模组合ad2
16、输⼊内容到⽂件中(echo)
echo  333>&
echo >&    //在2o.txt⽂件中加⼊内容
adb shell echo  512>/sys/kernel/debug/msm-bus-dbd/shell-client/slv
17、 IP 地址
adb shell ifconfig | grep Mask // IP地址
adb shell netcfg  // 部分系统版本使⽤该命令可获取,移动⽹络或其它连接的信息
adb shell cat /sys/class/net/wlan0/address  // 获取Mac 地址
18、 模拟按键/输⼊乘风破浪的们淘汰
adb shell input tap 50250// 在屏幕上点击坐标点x=50 y=250的位置
adb shell input keyevent 4// 模拟点击返回键
adb shell input text hello  //在焦点处于某⽂本框时,可以通过 input 命令来输⼊⽂本
使⽤ adb shell input keyevent 命令,不同的 keycode 能实现不同的功能。
19 、adb 启动程序命令
adb shell am start [options] <INTENT>
【options】参数
华晨宇身价adb shell am start  -D <INTENT> // 开启debug模式
adb shell am start  -W <INTENT>  // 等待启动完成
adb shell am start  --start-profiler<FILE>  <INTENT> // 将profiler中的结果输出到指定⽂件中
adb shell am start  -P  <INTENT> // 和--start-profiler⼀样,区别在于,在app进⼊idle状态时profiler结束
adb shell am start  -R <Count>  <INTENT> //  重复启动Activity,但每次重复启动都会关闭掉最上⾯的Activity
adb shell am start  -S  <INTENT>// 关闭Activity所属的App进程后再启动Activity
adb shell am start  --opengl-trace  <INTENT> // 开启OpenGL tracing
adb shell am start  --user <USER_ID>  <INTENT>// 使⽤指定的⽤户来启动activity,如果不输⼊,则使⽤当前⽤户执⾏使⽤⽰例:
am start -n com.android.music/com.android.music.MusicBrowserActivity  // 包名/Activity