ADB经常使用命令及做用

ADB

ADB全称Android Debug Bridge。
ADB是一种功能多样的命令行工具,起到了调试桥的做用,能够用来操做Android设备。
ADB是Android开发/测试人员强大的工具。android

能够说,ADB对咱们Android的开发相当重要,深刻的了解经常使用的命令和做用就显得相当重要了shell

ADB使一种客户端-服务器程序,包括如下三个组件:segmentfault

  • 客户端:用于发送命令,客户端在开发计算机上运行,经过发出adb命令从命令行终端调用客户端。
  • 守护进程:在设备上运行命令,守护进程在每一个设备上做为后台进程运行。
  • 服务器:管理客户端和守护进程之间的通讯,服务器在开发计算机上做为后台进程运行。

adb包含在Android SDK平台工具软件包当中,如何配置环境变量网上有太多的教程,咱们就不赘述了。缓存

ADB经常使用命令

环境变量配置完以后,咱们输入adb,就会出现如下的一下命令提示。安全



除了这个截图,后面还有不少的命令,接下来对咱们经常使用的命令行进行一下详细的介绍。
看目录咱们能够知道,ADB分为全局命令、常规命令、网络命令、文件传输命令、
应用安装命令、备份和恢复命令、调试命令、安全命令、脚本命令、内部调试命令、Shell命令。这几种命令,对于每一种命令,官网上都有详细的解释
developer.android.google.cn/studio/comm…bash

接下来,对于经常使用的一些命令,我着重的介绍一下。服务器

ADB全局选项

全局选项 说明
-a 在全部网络接口上监听,而非只在localhost上监听。
-d 将adb命令发送到惟一链接的USB设备。若是链接了多个USB设备,则返回错误。
-e 将adb命令发送到惟一运行的模拟器。若是有多个模拟器在运行,则返回错误。
-s serial_number 将adb命令发送到以其adb分配的序列号命名的特定设备(例如“emulator-5556”)。替换存储在 $ANDROID_SERIAL 环境变量中的序列号值。
-H server adb服务器主机的名称。默认值为localhost。
-P port adb服务端口号。默认值为5037。
-L socket 在提供的adb socket服务器的监听。默认值为tcp:localhost:5037。

启动/中止 服务

启动adb service命令:
adb start-server
可是,通常状况下,咱们无需手动调用这个命令,在运行的adb命令时候发现adb service没用启动的时候才会调用。微信

中止 adb service命令:
adb kill-server网络

常规命令

常规命令 说明
devices [-l] 输出全部的设备列表。-l 选项用于包含设备的描述
help 输出支持的adb命令及其描述的列表
version 输出adb版本号

查看应用列表

查看应用列表的的命令是
socket

adb shell pm list packages复制代码

具体的内容包括

参数 显示列表
全部应用
-f 显示应用关联的apk文件
-d 只显示disabled的应用
-e 只显示enable的应用
-s 只显示系统应
-3 只显示第三方应用
-i 显示应用的installer
-u 包含已卸载应用
-<FILTER> 包名包含<FILTER>字符串

安装APK

adb install <apk file>
常见参数及含义

参数 含义
-r 容许覆盖安装
-s 将应用安装到sdcard
-d 容许降级覆盖安装

卸载应用

adb unstall [-k] <packagename>
其中 <packagename> 表示应用的包名,-k参数可选,表示卸载应用可是保留数据和缓存目录。

清除应用数据与缓存

adb shell pm clear <packagename>
<packagename>表示应用包名

查看日志

[adb] logcat [<option>] ... [<filter-spec>] ...复制代码

经常使用用法列举以下:

1. 按级别过滤日志
Android 的日志分为以下几个级别:
V —— Verbose(最低,输出得最多)
D —— Debug
I —— Info
W —— Warning
E —— Error
F —— Fatal
S —— Silent(最高,啥也不输出)

按某级别过滤日志则会将该级别及以上的日志输出。
好比,命令:
adb logcat *:W会将 Warning、Error、Fatal 和 Silent 日志输出。

2. 按 tag 和级别过滤日志
好比,命令:

adb logcat MyApp:D *:S复制代码

表示输出
tag ActivityManager 的 Info 以上级别日志。

打开指定Activity

adb shell am start [options] <INTENT>复制代码

例如:

adb shell am start -n com.tencent.mm/.ui.LauncherUI复制代码

查看bug报告

adb bugreport复制代码

参考链接

developer.android.google.cn/studio/comm…
segmentfault.com/a/119000000…

动动小手指点赞,收藏,关注一键三连走一波吧!

欢迎关注公共号

关注公众号会有更多收获!


我的微信

咱们一块儿讨论,进步,提升!

加的人较多,请添加备注


相关文章
相关标签/搜索