Android ADB常用

2017-02-04  本文已影响257人  80s老人

ADB是个强大的调试工具,如果你有root权限,就掌控了整个手机。


模拟按键

adb shell input keyevent 66    //回车
adb shell input keyevent 22    //导航右键

模拟点击(单击)

adb shell input tap 1000 1750  //x 1000, y 1750

开发最重要功能,抓LOG

adb logcat > <your log file dir>

备份应用和设备的数据(不包含apk)

adb backup -all

备份应用和设备的数据

adb backup -apk -all
bk.jpg

从指定文件恢复

adb restore <your backup file dir>
rs.jpg

列出手机装的所有app的包名

adb shell pm list packages

列出除了系统应用的第三方应用包名

adb shell pm list packages -3

与应用交互

主要是使用 am <command> 命令,常用的 <command> 如下:

command 用途
start [options] <INTENT> 启动 <INTENT> 指定的 Activity
startservice [options] <INTENT> 启动 <INTENT> 指定的 Service
broadcast [options] <INTENT> 发送 <INTENT> 指定的广播
force-stop <packagename> 停止 <packagename> 相关的进程

<INTENT> 参数很灵活,和写 Android 程序时代码里的 Intent 相对应。

用于决定 intent 对象的选项如下:

参数 含义
-a <ACTION> 指定 action,比如 android.intent.action.VIEW
-c <CATEGORY> 指定 category,比如 android.intent.category.APP_CONTACTS
-n <COMPONENT> 指定完整 component 名,用于明确指定启动哪个 Activity,如 com.example.app/.ExampleActivity

<INTENT> 里还能带数据,就像写代码时的 Bundle 一样:

参数 含义
--esn <EXTRA_KEY> null 值(只有 key 名)
`-e --es <EXTRA_KEY> <EXTRA_STRING_VALUE>` string 值
--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> boolean 值
--ei <EXTRA_KEY> <EXTRA_INT_VALUE> integer 值
--el <EXTRA_KEY> <EXTRA_LONG_VALUE> long 值
--ef <EXTRA_KEY> <EXTRA_FLOAT_VALUE> float 值
--eu <EXTRA_KEY> <EXTRA_URI_VALUE> URI
--ecn <EXTRA_KEY> <EXTRA_COMPONENT_NAME_VALUE> component name
--eia <EXTRA_KEY> <EXTRA_INT_VALUE>[,<EXTRA_INT_VALUE...] integer 数组
--ela <EXTRA_KEY> <EXTRA_LONG_VALUE>[,<EXTRA_LONG_VALUE...] long 数组

调起 Activity

命令格式:

adb shell am start [options] <INTENT>

例如:

adb shell am start -n com.tencent.mm/.ui.LauncherUI

表示调起微信主界面。

adb shell am start -n org.mazhuang.boottimemeasure/.MainActivity --es "toast" "hello, world"

表示调起 org.mazhuang.boottimemeasure/.MainActivity 并传给它 string 数据键值对 toast - hello, world

调起 Service

命令格式:

adb shell am startservice [options] <INTENT>

例如:

adb shell am startservice -n com.tencent.mm/.plugin.accountsync.model.AccountAuthenticatorService

查看Activy栈

adb shell dumpsys activity | findstr "mFocusedActivity"
adb shell dumpsys activity top

去除所有解锁手势

adb shell rm /data/system/access_control.key 
adb shell rm /data/system/password.key 
adb shell rm /data/system/gesture.key
上一篇 下一篇

猜你喜欢

热点阅读