ADB全称Android Debug Bridge ,“安卓调试桥梁”连接Android和电脑通信的桥梁。 

市面上常见的手机助手,底层调研的都是ADB命令行。

C/S架构命令行工具,客户端和服务端都在PC本地。 

三部分: 
1、客户端,运行在PC机上client,可以通过它对Android的应用进行安装卸载和调试。 
2、 服务器,运行在PC机上server,负责管理client和手机端的通信。服务端用来接收客户端的请求,并发送给手机端。 
通信原理: 
启动ADBserver以后,在win系统中启动了adb.exe进程,进程默认监听5037端口。 
客户端通过这个端口接发送请求,被进程监听到,发送给Android端adbd进程。adbd进程执行shell命令。讲结果通过5037端口返回给server,server返回给客户端。 
3、手机端或者是模拟器。

1. 查看设备

adb devices    这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示

2.关闭adb

adb kill-server

3.开启adb

adb start-server

adb reboot

4. 安装软件

adb install   这个命令将指定的apk文件安装到设备上

adb install 路径\app-weichi-release.apk

当有多个设备接入ADB客户端,就要指定设备名称

adb -s 设备名 install 包名

adb -s emulator-5556 install 路径\helloWorld.apk

如果显示success,那么久安装apk包成功,显示Failure,则安装失败。

检查错误,排错,再执行如下命令:abd install -r 包名.apk

5、获取app的包名和activity名称

adb logcat | findstr START

脚本中,cmp= 后面的值就是 包名/activity名称

6. 卸载软件

adb uninstall <软件名>

adb uninstall -k <软件名>

如果加 -k 参数,为卸载软件但是保留配置和缓存文件.

#*************************APP启动时间的监控*********************#

7、监控APP启动时间

语法:adb shell am start -W packagename/activity

例子:adb shell am start -W com.android.calculator2/.Calculator

TotalTime的值,就是APP启动所消耗的时间

8、关闭app

语法:adb shell am force-stop 包名

例子:adb shell am force-stop com.android.calculator2

9、把app从前台调入后台

语法:adb shell input keyevent 3

ps:app的启动,分为冷启动和热启动

冷启动:app彻底停止运行后再启动

热启动:app进入后台后再启动

10. 从电脑上发送文件到设备(输入命令adb remount ,意思是将设备改为可读可写)

adb push <本地路径> <远程路径>

用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机)

如:adb push recovery.img /sdcard/recovery.img,将本地目录中的recovery.img文件传送手机的SD卡中并取同样的文件名.

adb push C:\recovery.img /sdcard/

 

11. 从设备上下载文件到电脑

adb pull <远程路径> <本地路径>

如:adb pull /data/local/tmp/blacklist.txt D:test.txt   将/data/local/tmp/blacklist.txt拉取到 本地D:text.txt 命名为text.txt

用pull命令可以把设备(手机)上的文件或者文件夹复制到本机电脑

 

12. 登录设备shell

adb shell

进入之后就可以执行shell命令了,比如cd ,pwd,ls等。

(如需转载请标明出处,谢谢!)

ADB常用命令简洁版整理的更多相关文章

  1. adb常用命令(golang版)及输入中文

    package main import ( "crypto/md5" "fmt" "image/png" "io/ioutil&q ...

  2. adb常用命令(转)

    1.Android Debug Bridge -adb常用命令 1.1简介 Android Debug Bridge,我们一般简称为adb,主要存放在sdk安装目录下的platform-tools文件 ...

  3. adb常用命令教程

    1.Android Debug Bridge - adb常用命令 1.1简介 Android Debug Bridge,我们一般简称为adb,主要存放在sdk安装目录下的platform-tools文 ...

  4. CentOS最常用命令及快捷键整理

    CentOS最常用命令及快捷键整理  整理了Linux常用命令及快捷键. 常用命令: 文件和目录: # cd /home                        进入 '/home' 目录 # ...

  5. 54. Android中adb常用命令及应用常用目录

    本文主要介绍adb常用命令及应用常用目录.1.adb常用命令adb devices列出所有连接的android设备.以下命令都是对单个devices而言,如果存在多个devices的话,下面的命令都需 ...

  6. Android开发系列之adb常用命令

    对于Android开发者来说,如果没有adb的帮助,那肯定就跟少了一只手那样别扭.其实笔者在刚刚学习Android开发的时候,也没有意识到adb的重要性.想想只要用IDE画出界面,然后实现后台的逻辑代 ...

  7. 【android】adb常用命令

    ADB常用命令: [adb help]获取帮助 [adb get-serialno]获取设备串号 [adb -s <serialNumber> <command>]给特定设备发 ...

  8. Android ADB 常用命令

    Android ADB 常用命令 泛原罪 2016.09.21 00:02* 字数 605 阅读 2912评论 0喜欢 1 [TOC] adb logcat 查看日志 详细内容可参见 ADB Usag ...

  9. ADB常用命令(一)

    转自:https://blog.csdn.net/qq_26552691/article/details/81348222 一.操作前请确认电脑上已配置好ADB环境.可在CMD命令行输入adb,如果出 ...

随机推荐

  1. gulp 流处理

    包含的内容:     穿插流     流合并     流队列     流筛选 1. 穿插流 // passthrough stream 把流传递给其他的 // use gulp.src(glob,{p ...

  2. js插件大全 jquery插件大全

    CocoaUI - 一个强大的 iOS UI 框架 http://www.cocoaui.com/ tab,slider,轮播不错的说 http://www.superslide2.com/index ...

  3. bzoj 4032 [HEOI2015]最短不公共子串——后缀自动机

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4032 不是 b 的子串的话就对 b 建后缀自动机,在 a 上枚举从每个位置开始的子串或者找子 ...

  4. Oracle记录(二) SQLPlus命令

    对于Oracle数据库操作主要使用的是命令行方式,而所有的命令都使用sqlplus完成,对于sqlplus有两种形式.就我个人而言,还是比较喜欢UNIX与Linux下的Oracle.呵呵 一种是dos ...

  5. MyBatis缓存结构

    Mybatis Cache结构图: CacheKey(statementId, sql, sqlParams,other). 上图展示了Mybatis Cache的结构: 1)每个Mapper对应一块 ...

  6. UE4动画功能整理

    转自:http://blog.ch-wind.com/ue4%E5%8A%A8%E7%94%BB%E5%8A%9F%E8%83%BD%E6%95%B4%E7%90%86/ 工欲善其事必先利其器,最近一 ...

  7. C#简单操作XML

    类文件: class OperatorXML { /// <summary> /// 确定资源文件路径,Resource为自己创建的目录 /// </summary> priv ...

  8. python学习(一) 基础知识

    开始学习<Python基础教程> 1.2 交互式解释器 按照书上的例子敲了个最简单的print函数,居然报错: >>> print "fsdfs"Sy ...

  9. Lambda表达式中使用正则表达式

    某语句如果不用正则表达式: string[] names = { "Tom", "Dick", "Harry", "Mary&qu ...

  10. Android独立交叉编译环境搭建

    我们经常需将一些C/C++源码编译成本地二进制,直接在android的linux内核上运行,这是就需要进行交叉编译.由于Android的运行环境核普通Linux又区别,所以常规方式针对ARM进行交叉编 ...