ADB操作手机的那些骚操作
前文再续,书接上一回
承接上一篇 ADB连接手机的那些姿势 ,我们已经成功地将用ADB与手机连接上,无论是有线亦或是无线连接。
这个时候,我们就可以使用ADB操作手机了。
确认设备状态
我们先确认一下设备有没在线先。
- adb devices
那么我们再测试一下手机有没root权限吧。
1 | adb root |
输入adb root后,会重启一下adb,然后输入adb shell后,观察前面的命令提示符。如果变成了#就说明提升为root权限成功了,否则就是未root的手机。
对于那部分成功进入root 模式的同学,可以用 adb unroot 回到正常状态
我们还可以用adb来安装、卸载、启动、某个应用
adb启动应用
1 | adb shell |
- adb shell 进入shell中
- pm list packages 列出所有应用App
有些同学就会发现App太多找来找去都找不到自己要找的那个App
这个时候,我们就可以用 | grep 来过滤我们的关键字了,比如
1 | pm list packages | grep camera |
前面那句就是列出所有package,然后用grep 过滤 含camera 的包
那我们就启动OPPO自带的相机吧。
1 | am start -n com.oppo.camera/.Camera 启动相机 |
效果如下:
类似的,我们还可以用 am -start 启动其他的软件,例如 QQ、微信什么的。
我们还可以找到软件的安装路径
1 | adb shell pm path com.tencent.qqmusic |
adb卸载、安装 应用
adb卸载以及安装的命令对应为
1 | adb uninstall 包名 |
卸载腾讯视频
安装QQ音乐
adb 传输文件
- adb push pc文件路径 设备路径
如 adb push C:\Users\Marx\Desktop\date.jpg /sdcard/
- adb pull 设备路径 pc文件路径
1 | adb pull /data/app/com.tencent.qqmusic-P2749Smc9nccljwLiexzJA==/base.apk C:\Users\Marx\Desktop |
adb 模拟操作
我们先进入到 adb shell 中
- adb shell
- input ,你会看到很多提示
- input tap 700 700 ,将会在 700,700 的位置点击一下
adb 实现拍照
在我现在打开的相机的场景中,那我们怎么点击拍照呢?我们并不知道拍照按钮的位置哦。又只能靠猜吗?
显然不是,我们有两个办法。
比如我们的场景是在相机里面点击拍摄,我们可以用到keyevent来操作
- input keyevent 27 是拍照的指令,但是这个时候要你打开相机
更多的keyevent可以进入到这个网址 查看 https://developer.android.com/reference/android/view/KeyEvent.html
如果进入不了的同学,可以后台回复 keyevent ,获取keyevent的文档。
我在这里挑几个好玩的出来给大家随意参考一下。
- 3 HOME 键
- 4 返回键
- 26 电源键
- 82 菜单键
adb 实现截屏
1 | - adb shell /system/bin/screencap -p /sdcard/screenshot.png |
- adb shell /system/bin/screencap -p /sdcard/screenshot.png , 截屏到 sdcard
- adb pull /sdcard/screenshot.png d:/screenshot.png ,传到电脑中
adb 查看系统信息
-
查看电池信息 dumpsys battery
-
屏幕分辨率 wm size
-
查看网络信息 ifconfig
-
查看Android的版本 getprop ro.build.version.release
-
查看内容以及资源使用情况 top,为了显示明显一点,打开了“王者”,大家可以看到最上面那个应用所占的资源。
adb查看应用日志
- adb logcat 这个简直学过Android的同学必备技能了。
- adb logcat *:E ,输出所以 错误日志
还有很多很多的过滤以及对应进程查看的操作,大家自行查阅资料,这里便不展开了。
因为Android是一个基于Linux内核的开放源代码移动操作系统。所以很多Linux命令在adb shell 中也是适用的。我在这里就不一一说明了。例如 cat、cd、chmod、df、grep、kill、mv、之类的命令,大家可以自行去查资料。