ADB (Android Debug Bridge)  是android SDK中的工具,需要先配置环境变量才能使用。起调试桥的作用,可以管理安卓设备。(也叫debug工具)

---------查看设备连接状态 -----------

adb get-serialno  获取设备的ID和序列号<serialNumber>

adb devices  查询当前计算机上连接那些设备(包括模拟器和手机)

adb get-state  查看模拟器/设施的当前状态.

----------发送命令到设备 ----------- 

adb [-d|-e|-s <serialNumber>] <command>

-d 发送命令给usb连接的设备

-e 发送命令到模拟器设备

-s <serialNumber> 发送命令到指定设备

如启动手机设备shell: adb -d shell

adb forward <local> <remote>发布端口,可以设置任意的端口号,做为主机向模拟器或设备的请求端口。如:adb forward tcp:5555 tcp:8000

adb bugreport  输出bug日志

adb reboot 重启手机

adb remount 将system分区重新挂载为可读写分区

adb kill-server 终止adb服务进程

adb start-server 重启adb服务进程

adb root 已root权限重启adb服务

adb wait-for-device 在模拟器/设备连接之前把命令转载在adb的命令器中

adb jdwp 查看指定的设施的可用的JDWP信息.

adb shell am 命令可以启动应用程序

adb shell input text <string>  向设备输入文本(光标所在的文本框)

adb shell input keyevent <event_code> 向设备发送按键事件

如:在编辑短信时,往文本框输入文本:adb shell input text "hello"

向手机发送键值回Home:adb shell input keyevent 3

参考view/KeyEvent.java中的  KEYCODE_*

public static final int KEYCODE_SOFT_LEFT      = 1;

public static final int KEYCODE_SOFT_RIGHT   = 2;

public static final int KEYCODE_HOME             = 3;

public static final int KEYCODE_BACK              = 4;

public static final int KEYCODE_CALL               = 5;

public static final int KEYCODE_ENDCALL         = 6;

----------安装卸载 -----------  

adb install [-l] [-r] <package> 安装应用  (-l 表示锁定该程序; -r 重新安装该应用)

adb uninstall [-k] <package>  卸载应用     (-k 表示不删除程序运行产生的数据和缓存目录)

如: adb install d:\hello.apk (设备中的系统安装器一般是 “adb install -r apk路径”)

adb uninstall com.google.android.youtube

----------文件操作 -----------  

adb push <local> <remote>  把本地文件放到(复制)目标设备中

adb pull <remote> <local>   从设备中拖出(复制)文件到指定的本地目录

----------基本的linux shell命令---------- 

adb shell [command]   (exit 退出adb shell)

ls [-a] [-l] 列出目录下的文件和文件夹(-a 表示列出所有文件,包括隐藏文件; -l 表示已列表形式,且显示所有权限)

cd  切换目录 (cd .. 表示返回上层目录,理论可以执行多次..)

pwd 查看当前所在位置

mkdir 新建文件夹

touch 新建文件(可多次新建,如 touch a.txt b.txt .....)

cp 复制文件

mv 剪切/重命名文件 (重命名 mv old-name.txt new-name.txt)

rm 删除目录和文件 (rmdir 只能删除空文件夹)

find 查找文件或文件夹(find -name file-name ;find *a* 模糊查找)

cat  查看文件内容

ps 可以看那个进程再跑

ps -x [PID] 查看单个进程的状态

top 可以看那个进程的占用率最高

su 切换到root用户

kill [pid] 杀死一个进程

chmod 777 <file> 修改该文件为可执行权限 (最高权限 )

----------查看系统状态和信息 -----------

adb shell procrank 查询各进程内存使用情况

adb shell service list 查看services信息

adb shell cat /proc/meminfo 查看当前的内存情况

adb shell cat /proc/cpuinfo 查看CPU信息(硬件)

adb shell cat /proc/iomem  查看IO内存分区

adb shell getprop 列出系统所有属性

adb shell getprop | findstr "gsm" 列出包含gsm的属性

adb shell setprop <key> <value>  修改系统属性

adb shell sqlite3 可以执行sql语句查看数据库信息。

adb shell dmesg  查询内核缓冲区信息

adb shell dumpstate 各类信息,比如进程信息,内存信息,进程是否异常,kernel的log等

adb shell dumpcrash  查看crash

adb shell dumpsys [cpuinfo/meminfo/battery..... ] 查看系统的一些信息

adb shell service 查询所有service的状态

-----------Logcat命令 ---------- 

adb logcat [<option>] [ <filter-spec> ]  查看设备log.

adb logcat -c 清除日志信息

adb logcat -d 缓存日志

adb logcat -f <filename>  将日志输出到文件

adb logcat -s  过滤输出指定标签的日志

1.查看可用日志缓冲区: 

adb logcat -b radio — 查看无线/电话的相关的缓冲区信息.

adb logcat -b events — 查看和事件相关的的缓冲区.

adb logcat -b main — 查看主要的日志缓冲区

2.过滤日志输出:

过滤器语句按照下面的格式tag[:priority] , tag 表示是component(*是指所有的), priority 是表示tag的报告的等级 (优先级)

adb logcat *:W  显示优先级为warning或更高的日志信息

adb logcat ActivityManager:I MyApp:D *:S

优先级从低到高顺序排列:

V — Verbose (最低优先级,明细)

D — Debug (调试)

I — Info (信息)

W — Warning (警告)

E — Error (错误)

F — Fatal (致命的)

S — Silent (最高优先级,无记载)

3.控制日志输出格式: 

可以通过 -v 选项得到格式化输出日志的相关信息.

[adb] logcat [-v <format>]

brief —显示优先级/标签和原始进程的PID(默认格式)

process — 只显示进程PID

tag — 显示优先级/标签

thread — 显示进程:线程和优先级/标签

raw — 显示原始日志消息,没有其他元数据字段

time — 显示日期,调用时间,优先级PID

long —显示所有的元数据字段并且用空行分隔消息内容

例如:adb logcat -v threadtime 显示时间和线程信息

-----------Other----------  

adb shell

pm 命令详解

pm list package [-f] 查看所有已安装应用的包名 (-f 表示查看apk的保存目录)

pm list permissions [-g] [-f] [-d] [-u] 查看所有权限

pm list permission-groups 查看已知权限组

pm list features 查看所有硬件相关

pm

waiting.......

android adb 命令详解的更多相关文章

  1. Android ADB命令详解

    adb的全称为Android Debug Bridge.是android司机经常用到的工具 . 你能在本篇文章中学到什么? adb基本指令 Shell AM&PM adb模拟用户事件 logc ...

  2. Android ADB命令教程二——ADB命令详解

    Android ADB命令教程二——ADB命令详解 转载▼ 原文链接:http://www.tbk.ren/article/249.html       我们使用 adb -h 来看看,adb命令里面 ...

  3. ADB命令详解及大全( 声明:此文是参考大佬博客所做的笔记!)

    adb是什么? adb的全称为Android Debug Bridge,就是起到调试桥的作用.通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,说白了就是debug工具.a ...

  4. android 调试工具ADB命令详解

    adb是什么? adb的全称为Android Debug Bridge,就是起到调试桥的作用. 通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,说白了就是debug工具. ...

  5. ADB命令详解

    一.adb介绍 ADB的全称为Android Debug Bridge,字面意思就是安卓调试桥接,简单点说,它是Android系统提供的一套工具,通过它,我们可以在电脑上建立一个连接到手机的通道,然后 ...

  6. Android:adb命令详解

    什么是adb adb工具即Android Debug Bridge(安卓调试桥) tools.它就是一个命令行窗口,用于通过电脑端与模拟器或者真实设备交互

  7. Android logcat命令详解

    一.logcat命令介绍 1.android log系统 2.logcat介绍 logcat是android中的一个命令行工具,可以用于得到程序的log信息 log类是一个日志类,可以在代码中使用lo ...

  8. Android pm 命令详解

    一.pm命令介绍与包名信息查询 1.pm命令介绍 pm工具为包管理(package manager)的简称 可以使用pm工具来执行应用的安装和查询应用宝的信息.系统权限.控制应用 pm工具是Andro ...

  9. 夜神安卓模拟器adb命令详解

    https://www.yeshen.com/faqs/H15tDZ6YW 一.如何找到adb? 安装夜神安卓模拟器后,电脑桌面会有"夜神模拟器"的启动图标,鼠标右键--打开文件所 ...

随机推荐

  1. replace和translate的用法

    select replace ('111222333444','222','888') from dual;with tmp as(select 'aabb/123\:cde工人' s from du ...

  2. 玩转Redis之Window安装使用(干货)

    距离上次定Gc.Db框架,好久没有更新博客了,今日没什么事,就打算就Redis写点东西. Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理.它支持字符 ...

  3. Django自定义模板

    定义simple_tag步骤 一.创建templatetags文件 首先在app下创建templatetags文件:名字不许叫这个,不能改变. 二.在文件中创建一个py文件 文件名自定义 三.在创建的 ...

  4. 一个将 footer 保持在底部的最好方法

    原文: Quick Tip: The Best Way To Make Sticky Footers 当你在布局网页时,有可能会遇到类似下面的这种情况 导致这一问题的原因是页面内容太少,无法将内容区域 ...

  5. MySQL隐式转化整理

    MySQL隐式转化整理 前几天在微博上看到一篇文章:价值百万的 MySQL 的隐式类型转换感觉写的很不错,再加上自己之前也对MySQL的隐式转化这边并不是很清楚,所以就顺势整理了一下.希望对大家有所帮 ...

  6. Fiddler替换HTTP Request Host

    原文链接:http://caibaojian.com/fiddler.html 这边指的替换HTTP Request Host是,所有原先发到a.com的HTTP Request , Fiddler都 ...

  7. SHELL编写NGINX服务控制脚本

    使用源码包安装的Nginx没办法使用"service nginx start"或"/etc/init.d/nginx start"进行操作和控制,所以写了以下的 ...

  8. js 对象的_proto_

    js 对象呢,有个属性叫_proto_,以前没听说过,也没关注,最近看这个原型,就被迫知道了这个东西,js 这里面的东西,真是规定的很奇怪,具体为啥也不知道,就测试发现的,对象的_proto_属性,和 ...

  9. PostgreSQL

    PostgreSQL新手入门   作者: 阮一峰 日期: 2013年12月22日 自从MySQL被Oracle收购以后,PostgreSQL逐渐成为开源关系型数据库的首选. 本文介绍PostgreSQ ...

  10. Linux安装库文件(环境变量和makefile)

    CFLAGS 表示用于 C 编译器的选项,CXXFLAGS 表示用于 C++ 编译器的选项.这两个变量实际上涵盖了编译和汇编两个步骤. CFLAGS/CPPFLAGS: 指定头文件(.h文件)的路径, ...