软硬件环境
- android 7.1.2
连接设备
第一步就是连接设备,后面的操作也是基于这一步的
adb connect 192.168.1.100
对某个特定设备进行操作
这里的前提是已经 connect
了多个设备,可以通过参数 -s
来指定某特定设备进行后续操作
C:\Users\djstava>adb devices
List of devices attached
192.168.1.100:5555 device
8D6TUCDI69D6G6AI device
对某个设备进行操作
adb -s 8D6TUCDI69D6G6AI shell
adb远程抓图
第一步进行截屏,保存在系统中可写的目录,然后使用 adb pull
拉取到本地目录
adb shell /system/bin/screencap -p /data/android_traffic_balance_01.png
adb pull /data/android_traffic_balance_01.png .
adb启动activity
直接启动
adb shell am start -n com.xugaoxiang/com.xugaoxiang.MainActivity
指定intent
adb shell am start -a intent_ACTION -c intent_category -n com.xugaoxiang/com.xugaoxiang.MainActivity
指定浏览器打开特定页面
如果系统中存在多个浏览器,可以选择使用特定浏览器打开某个页面
adb shell am start -a android.intent.action.VIEW -d http://google.com
列出所有app的包名
也可以通过 grep
进行过滤,加上 -f
参数可以获取 apk
对应的包名和存放路径
adb shell pm list packages
获取当前打开的app的包名
需要知道某个 app
的包名,打开 app
,然后执行下面命令查看
adb shell dumpsys window | findstr mCurrentFocus
可写方式重新挂载分区
adb root
adb remount
查看系统日志
adb shell logcat
获取apk对应的包名和路径
adb shell pm list package -f
关闭selinux
# 方法1
adb root
adb shell setenforce 0
# 方法2
adb root
adb shell
echo 0 > /sys/fs/selinux/enforce
模拟键值发送
这里主要针对遥控器
adb shell input keyevent $键值
这里的键值指的是 android
层的值,在文件 frameworks/base/core/java/android/view/KeyEvent.java
中定义,这部分内容可以参考前面的文章 android添加遥控器按键处理
模拟屏幕点击事件
模拟在坐标(200,200)位置的单击
adb shell input tap 200 200
模拟屏幕滑动事件
模拟从位置(200,200)滑动到位置(400,400)
adb shell input swipe 200 200 400 400
查看系统属性
adb shell getprop
要想得到具体某个属性值,在上述命令后跟上属性值
设置系统某个属性
adb shell setprop dalvik.vm.heapgrowthlimit 512m