常用ADB命令
2016-05-21 00:00
309 查看
摘要: 写给自己看
查看ADB版本信息。
2、
显示SDK中所有的Android平台信息。
列出来的是SDK里面安装的所有版本的API信息,每两个版本之间以
输入例子如下:
3、
安装
4、
拷贝
注:
5、
从设备拷贝
6、
重新挂载系统分区,使系统分区可读写。
7、
进入
8、
在
9、
卸载APK。
10、
在
11、
查看系统盘符和大小。如:
12、
输出所有已安装的应用。
这条命令在
输出例子如下:
13、
模拟按键输入。部分按键
14、
模拟滑动输入。
输入举例:
15、
启动
举例如下:
16、
录制屏幕。
举例如下:
17、
输出所有
不建议直接使用,建议配合
举例如下:
输入
输出
来自我的简书:http://www.jianshu.com/p/c5dde71b96ad
1、adb version
查看ADB版本信息。
2、
android list targets
显示SDK中所有的Android平台信息。
列出来的是SDK里面安装的所有版本的API信息,每两个版本之间以
------进行分隔。
输入例子如下:
id: 8 or "Google Inc.:Google APIs:23" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 1 Description: Android + Google APIs Based on Android 6.0 (API level 23) Libraries: * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.media.effects (effects.jar) Collection of video effects * com.google.android.maps (maps.jar) API for Google Maps Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in Tag/ABIs : no ABIs.
3、
adb install [-lrtsdg] <file>
安装
APK文件。
Args | Description | 个人理解 |
---|---|---|
-l | forward lockapplication | 锁定当前file |
-r | replaceexisting application | 替换已存在的,会保留数据 |
-t | allow testpackages | 允许调试 |
-s | install application on sdcard | 安装到SD卡 |
-d | allow version code downgrade | 允许低版本覆盖高版本 |
-g | grantall runtime permissions | 授予所有runtime权限 |
adb push [-p] <local> <remote>
拷贝
file/dir(官方如是说)到设备
Args | Description | 个人理解 |
---|---|---|
-p | to display the transfer progress | 显示拷贝进度 |
adb install是将
APK安装到
data/data/目录下,作为普通用户应用软件。
adb push不是安装命令,它是将
file/dir写入设备的存储系统中;因此,只要有相应的权限,就可以将文件放到任何目录下,当然也就能将
APK文件
push到
system目录下,作为系统应用程序。
5、
adb pull [-p] [-a] <remote> [<local>]
从设备拷贝
file/dir(官方如是说)到
local指定的目录。
Args | Description | 个人理解 |
---|---|---|
-p | to display the transfer progress | 显示拷贝进度 |
-a | means copy timestamp and mode | 复制时间戳和模式(这个a对应哪个单词?) |
adb remount
重新挂载系统分区,使系统分区可读写。
7、
adb shell
进入
shell命令模式。
8、
logcat | grep "TAG"
在
shell命令模式下查看
TAG日志
9、
adb uninstall [-k] <package>
卸载APK。
Args | Description | 个人理解 |
---|---|---|
-k | means keepthe data and cache directories | 保留当前 APP的数据和缓存目录 |
rm *.apk
在
shell命令下删除文件。
11、
adb shell df
查看系统盘符和大小。如:
Filesystem | Size | Used | Free | Blksize |
---|---|---|---|---|
/dev | 224.1M | 80.0K | 224.1M | 4096 |
/sys/fs/cgroup | 224.1M | 12.0K | 224.1M | 4096 |
/mnt | 224.1M | 0.0K | 224.1M | 4096 |
/system | 1.5G | 873.7M | 614.2M | 4096 |
/data | 1.7G | 293.4M | 1.4G | 4096 |
/cache | 248.0M | 156.0K | 247.8M | 4096 |
/protect_f | 5.8M | 56.0K | 5.8M | 4096 |
/protect_s | 5.8M | 52.0K | 5.8M | 4096 |
/nvdata | 27.5M | 864.0K | 26.6M | 4096 |
/storage | 224.1M | 0.0K | 224.1M | 4096 |
/mnt/runtime/default/emulated | 1.7G | 293.4M | 1.4G | 4096 |
/storage/emulated | 1.7G | 293.4M | 1.4G | 4096 |
/mnt/runtime/read/emulated | 1.7G | 293.4M | 1.4G | 4096 |
/mnt/runtime/write/emulated | 1.7G | 293.4M | 1.4G | 4096 |
adb shell pm list packages -f
输出所有已安装的应用。
这条命令在
shell也可以使用:
pm list packages -f
输出例子如下:
C:\Users\Shawn>adb shell pm list packages -f package:/system/priv-app/FMRadio/FMRadio.apk=com.android.fmradio package:/system/plugin/PrivacyProtectionLock/PrivacyProtectionLock.apk=com.mediatek.ppl package:/system/vendor/operator/app/Litres/Litres.apk=ru.litres.android package:/system/app/Uicc2Terminal/Uicc2Terminal.apk=org.simalliance.openmobileapi.uicc2terminal package:/system/priv-app/TelephonyProvider/TelephonyProvider.apk=com.android.providers.telephony package:/system/app/AdupsFotaReboot/AdupsFotaReboot.apk=com.adups.fota.sysoper package:/system/vendor/operator/app/Vkontakte/Vkontakte.apk=com.vkontakte.android
13、
adb shell input keyevent+
Code
模拟按键输入。部分按键
Code如下:
Code | Action |
---|---|
82 | menu |
3 | home |
19 | up |
20 | down |
21 | left |
22 | right |
66 | enter |
4 | back |
adb shell input touchscreen swipe <x1> <y1> <x2> <y2>
模拟滑动输入。
Args | Description |
---|---|
x1 | 起点 x坐标 |
y1 | 起点 y坐标 |
x2 | 终点 x坐标 |
y2 | 终点 y坐标 |
adb shell input touchscreen swipe 18 665 18 350
15、
adb shell am start -n 包名/包名+类名
启动
Activity。
举例如下:
adb shell am start -n com.android.music/com.android.music.MusicBrowserActivity
16、
adb shell screenrecord <file>
录制屏幕。
举例如下:
adb shell screenrecord /storage/emulated/demo.mp4
17、
adb shell dumpsys
输出所有
Activity的运行状态。
不建议直接使用,建议配合
shell下的
grep命令进行过滤使用。
举例如下:
输入
dumpsys activity activities | grep "mms"
输出
1|root@DEXP:/ # dumpsys activity activities | grep "mms" * TaskRecord{94182ff #104 A=android.task.mms U=0 sz=1} userId=0 effectiveUid=u0a11 mCallingUid=u0a11 mCallingPackage=com.android.mms affinity=android.task.mms intent={flg=0x10008000 cmp=com.android.mms/.ui.ConversationList} realActivity=com.android.mms/.ui.ConversationList Activities=[ActivityRecord{2d76a1e u0 com.android.mms/.ui.ConversationList t104}] * Hist #0: ActivityRecord{2d76a1e u0 com.android.mms/.ui.ConversationList t104} packageName=com.android.mms processName=com.android.mms launchedFromUid=10011 launchedFromPackage=com.android.mms userId=0 app=ProcessRecord{5f565ae 9179:com.android.mms/u0a11} Intent { flg=0x10008000 cmp=com.android.mms/.ui.ConversationList } frontOfTask=true task=TaskRecord{94182ff #104 A=android.task.mms U=0 sz=1} taskAffinity=android.task.mms realActivity=com.android.mms/.ui.ConversationList dataDir=/data/user/0/com.android.mms TaskRecord{94182ff #104 A=android.task.mms U=0 sz=1} Run #0: ActivityRecord{2d76a1e u0 com.android.mms/.ui.ConversationList t104} mResumedActivity: ActivityRecord{2d76a1e u0 com.android.mms/.ui.ConversationList t104} mFocusedActivity: ActivityRecord{2d76a1e u0 com.android.mms/.ui.ConversationList t104}
相关文章推荐
- Laravel5学生成绩管理系统-05-分页
- Laravel5学生成绩管理系统-06-资源控制器删除学生
- Velocity的资料【转】
- Velocity属性汇总
- Ubuntu15.10下LAMP环境搭建
- [涨停板]国资委:今年进一步推进央企重组
- 时间戳转换日期
- CoreOS 安装 docker-compose
- mysql时间类型year
- mysql时间类型Date
- time时间
- datetime
- 通过枚举定义每个枚举类型的值
- 通过枚举定义每个枚举类型的值
- 基础篇-数据库与数据库实例概念
- 基础篇-MySql数据库体系结构
- KindEditor得不到textarea值的解决方法
- MySQL UUID函数的详解
- SQLMAP- 自动注入
- C# 配合 Easyui DataGrid 实现增删改查 通用模板