ADB是android sdk里的一个工具,用这个工具可以直接操作管理android模拟器或者真实的andriod设备。 ADB是一个客户端-服务器端程序,其中客户端是你用来操作的电脑,服务器端是android设备。

它的主要功能有:

  1. 运行设备的shell(命令行)
  2. 管理模拟器或设备的端口映射
  3. 计算机和设备之间上传/下载文件
  4. 将本地apk软件安装至模拟器或android设备

adb 其实就是 Android Debug Bridge, Android 调试桥的缩写,adb 是一个 C/S 架构的命令行工具,主要由 3 部分组成:

运行在 PC 端的 Client : 可以通过它对 Android 应用进行安装、卸载及调试

Eclipse 中的 ADT、SDK Tools 目录下的 DDMS、Monitor 等工具,都是同样地用到了 adb 的功能来与 Android 设备进行交互。

adb服务使用的端口号:5037

PC 端的手机助手,如 360 手机助手、豌豆荚、应用宝等,除了安装第三方应用方便,其他的功能,基本上都可以通过 adb 命令去完成,这里要注意的是自带的 adb 程序可能会与 Android SDK 下的 adb 程序产生冲突,5037 端口被占用,导致使用 adb 命令时无法连接到设备。

运行在 PC 端的 Service : 其管理客户端到 Android 设备上 adb 后台进程的连接

adb
服务启动后,Windows
可以在任务管理器中找到 adb.exe 这个进程

adb进程

运行在 Android 设备上的 adb 后台进程,执行 adb shell ps | grep adbd ,可以找到该后台进程,windows 下执行adb shell ps |findstr adbd

adb 命令

在开发或者测试的过程中,我们可以通过 adb 来管理多台设备,其一般的格式为:

adb [-e | -d | -s <设备序列号>]  <子命令>

在配好环境变量的前提下,在命令窗口当中输入 adb help 或者直接输入 adb ,将会列出所有的选项说明及子命令。

adb devices , 获取设备列表及设备状态

adb get-state , 获取设备的状态

设备的状态有 3 钟,device , offline , unknown
device:设备正常连接
offline:连接出现异常,设备无响应
unknown:没有连接设备

adb logcat , 打印 Android 的系统日志

adb bugreport , 打印dumpsys、dumpstate、logcat的输出,也是用于分析错误

输出比较多,建议重定向到一个文件中

adb bugreport > d:\bugreport.log

adb install , 安装应用,覆盖安装是使用 -r 选项

windows 下如果需要安装含有中文名的 apk ,可以直接对apk的包名进行修改

1. cmd-进入应用所在目录(C:\WDJDownload\Apps)

2. 执行命令:adb install aiqiyi.apk(apk名称)

3. 手机上会有提示是否同意安装,点击同意,进行安装

4 .手机上安装成功,出现success表示安装成功。

adb uninstall , 卸载应用,

后面跟的参数是应用的包名,请区别于 apk 文件名

adb pull , 将 Android 设备上的文件或者文件夹复制到本地
例如复制 init
文件到 D 盘:adb   pull  
init   d:\

如果需要重命名为 rename.txt:adb  pull 
init  d:\rename.txt

注意权限,复制系统权限的目录下的文件,需要 root

adb push , 推送本地文件至 Android 设备
例如推送 D 盘下的testrabbit.txt 至 /mnt:adb  push  d:\testrabbit.txt  /mnt/

D:\>adb push testrabbit.txt /mnt/

failed to copy 'testrabbit.txt' to
'/mnt//testrabbit.txt': Read-only file system

在shell命令行中输入:adb root

切换到root用户

然后执行如下命令:(注意 /表示的是根目录,因此这个不仅仅是对sdcard,其他文件也可以读写。rw表示读写权限,mount重挂载文件系统)

adb shell mount -o remount rw / , 修改系统读写权限

root@generic:/ # adb shell mount -o remount rw /

adb root , adb remount,可以直接已这两个命令获取 root 权限,并挂载系统文件系统为可读写状态

学习交流QQ:270224761(ep)

Android常用adb命令总结(一)的更多相关文章

  1. Android 常用 adb 命令

    查看原文:http://blog.csdn.net/u010818425/article/details/52266593 (一)基础操作 安装app adb install -r xxx.apk / ...

  2. Android 常用 adb 命令总结

    Android 常用 adb 命令总结 针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常用的 adb 命令熟记于心, 将会为 Android 测试带来很大的方便,其中很多命 ...

  3. [原创]Android 常用adb命令总结

    [原创]Android 常用adb命令总结 1 adb介绍 1.1 adb官方网站及下载 官方网站下载安装:http://adbshell.com/downloads 1.2 adb安装是否成功检查? ...

  4. 【转】Android 常用 adb 命令总结

    原文地址:http://testerhome.com/topics/2565 针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常用的 adb 命令熟记于心, 将会为 Andr ...

  5. Android 常用 adb 命令总结【转】

    原文链接 针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常用的 adb 命令熟记于心, 将会为 Android 测试带来很大的方便,其中很多命令将会用于自动化测试的脚本当中 ...

  6. Android常用adb命令总结(二)

    adb shell 命令 简单点讲,adb 命令是 adb 这个程序自带的一些命令,而 adb shell 则是调用的 Android 系统中的命令,这些 Android 特有的命令都放在了 Andr ...

  7. Android常用adb命令

    1.进入手机命令行模式 adb shell 有多部手机的话 adb -s + 手机编号 + shell 2.安装apk adb install 然后将apk文件拖进命令行 卸载apk adb unin ...

  8. 常用adb命令总结

    前言 很早就想整理一下自己平时常用的一些adb命令,不仅为了便于以后查找,而且整理的过程自己又重新复习了一遍,但是当我开始在度娘一搜的时候,发现很多人已经写的非常详细了,尤其是当我发现了这篇adb概括 ...

  9. Android 常用adb shell 命令

    原文地址http://blog.csdn.net/rain_butterfly/article/details/40894807 调试Android程序有时需要adb shell 命令,adb全称An ...

随机推荐

  1. mongo shell 通过返回信息定位错误点

    有时候我们会通过mongo shell 运行一些脚本,去执行更新或运维需求.mongo shell 可执行的代码可以实现比较复杂的功能,代码也可以比较丰富.当执行报错时,如果可以快速定位到错误点,对解 ...

  2. 再次梳理AMD、CMD、CommonJS、ES6 Module的区别

    AMD AMD一开始是CommonJS规范中的一个草案,全称是Asynchronous Module Definition,即异步模块加载机制.后来由该草案的作者以RequireJS实现了AMD规范, ...

  3. 记一次Tomcat启动报错Failed to start component [StandardEngine[Catalina].Standard

    今天启动项目的时候,发现tomcat一直报错,之前都一直没有问题的啊,提示       org.apache.catalina.LifecycleException: Failed to start ...

  4. 如何用上新版本的 IDEA(IDEA 2019.2.2版本)

    转载请注明出处 电脑重装系统后,重新安装了最新版的IDEA发现,用原来的方式弄得话不成功.又下载了2018版本的,用原来的方式还是可以到2099年的.原来是IDEA现在很重视这方面,原来的方法在新版本 ...

  5. C++ 面向对象程序设计复习大纲

     这是我在准备C++考试时整理的提纲,如果是通过搜索引擎搜索到这篇博客的师弟师妹,建议还是先参照PPT和课本,这个大纲也不是很准确,自己总结会更有收获,多去理解含义,不要死记硬背,否则遇到概念辨析题会 ...

  6. 多进程操作-进程锁multiprocess.Lock的使用

    多进程操作-进程锁multiprocess.Lock的使用 ​ 通过之前的Process模块的学习,我们实现了并发编程,虽然更加充分地利用了IO资源,但是也有缺陷:当多个进程共用一份数据资源的时候,就 ...

  7. JQuery Deferred对象使用小结

    场景描述 如下,打开页面时,获取默认选中的项目,同时也会初始化Combobox下拉框下拉列表数据 问题描述 获取默认选中项目及下拉列表的js函数位于common.js文件,类似如下: // 根据项目类 ...

  8. layui table 分页 序号始终从”1“开始解决方法

    在用Layui table 分页显示数据,用 type:"numbers" 进行显示序号有以下的问题 1.表格自带的分页,page:true 这种分页,在切换页面的时候序号可以正常 ...

  9. PgadminⅢ对PostgreSQL中的数据导出insert格式的SQL文档给别的数据库用

    导出的sql文件:

  10. Android 进程间通讯方式

    Android 进程间通讯方式 1.通过单向数据管道传递数据 管道(使用PipedWriter/ 创建PipedReader)是java.io包的一部分.也就是说,它们是一般的Java功能,而不是An ...