赞
踩
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 ro.product.model // 型号
4、通过dumpsys查询一些硬件使用情况
adb shell getprop ro.build.version.release // 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 // 显示屏参数
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 文件名
16、输入内容到文件中(echo)
echo 333 >> 2.txt
echo >>2o.txt //在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 50 250 // 在屏幕上点击坐标点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
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。