abd 命令
adb全称Android Debug Bridge ,安卓调试桥接器。它是Android SDK里面的一个工具,用这个工具可以直接操作管理Android模拟器或者真实Android设备。adb的工作方式比较特殊采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关的网络端口,所以当我们运行eclipse时adb进程就会自动运行。
1. adb devices
主要作用:查看当前已连接的设备,连接到计算机的Android设备或者模拟器将会以列表的形式显示。
输出格式:[serialNumber][state]
l 如果当前没有模拟器或者设备运行,adb则会返回List of devices attached为空
l offline:表明设备没有连接到计算机或无响应
l device:设备已经连接到计算机。注意,该状态并不表示Android设备可用,当Android设备处于启动阶段时,若连接成功也会返回该状态。
2. adb install <apk文件路径>
主要作用:将指定的apk文件安装到设备上,<apk文件路径>可以从本地文件夹拖动到终端中。
常用参数:
adb install –r 覆盖安装
adb install –s 安装到SD卡
adb install –rs覆盖安装到SD卡
adb –s <serial number> install 选定设备安装
当有多个设备连接时,可以用下面的命令来直接选定设备进行安装。
adb [-d|-e|-s <serial number>] install <path_to_apk>
d:真机(多个设备中只有一个真机时适用)
e:模拟器(多个设备中只有一个模拟器时适用)
s:序列号
adb –d install ./test.apk
adb –s emulator-5556 install ./test.apk
3. adb uninstall <包名>
主要作用:卸载设备上的指定程序
查看包名路径:/data/app,系统安装包路径:/sys/data,这两个路径下文件的查看都需要root权限
adb uninstall –k <包名>
adb shell pm uninstall –k <包名>
卸载程序但是保留其配置和缓存文件,即/data/data/packname下的数据与/sdcard/程序名 的数据
4. adb push/pull
主要作用:复制文件
1)adb push <本地路径><设备路径>
把pc上的文件或文件夹复制到设备中。
adb push /home/test.apk /sdcard/
2)adb pull <设备路径><本地路径>
把设备上的文件或文件夹复制到电脑
adb pull /sdcard/log/test.xls /home/
Pull命令后可不输入本地地址,不输入时文件会复制到当前终端所在目录
5. 关闭和启动adb服务
sudo –s
adb kill-server //关闭adb服务
adb start-server //启动adb服务
6. sudo –i和sudo –s的区别
sudo –i:在root用户下,使用root权限执行adb命令
sudo –s:在当前用户下,使用root权限执行adb命令
7. adb logcat
主要作用:查看日志,在命令行中显示调试信息
adb logcat >> <指定文件路径> 将logcat信息保存在指定文件中
>> 追加
>覆盖
adb logcat –help:查看logcat命令帮助文档
每一条日志消息都有一个标记和优先级与其关联。
格式为:<priority>/<tag>
过滤不同优先级的log:adb logcat *:W(过滤比W优先级低的log)
标记是一个简短的字符串,用于标识原始消息的来源(例如“View”来源于显示系统)。
优先级是下面的字符,顺序从低到高:
V—Verbose 明细(最低优先级)
D—Debug 调试
I—Info 信息
W—Warm 警告
E—Error 错误
F—Fatal 严重错误
S—Silent 无记载(最高优先级,没有什么会被记载)
建议配合Eclipse使用,查看logcat
8. adb shell
由于Android是基于Linux内核的操作系统。因此,在Android上可以执行shell命令。
常用命令如下:
ls 查看文件夹
cd 改变目录
cat <文件名> 查看文件内容
rm 删除文件
mkdir <文件夹> 新建文件夹
cp 复制文件到另一目录
exit 退出shell命令
adb shell <command> 直接运行设备命令
adb shell su –c “<command>” 直接运行root权限命令
9. adb shell am
am start –n <包名>/<包名>.<Activity名> 启动程序
am force-stop <包名> 强制停止程序
am kill <包名> 杀死与包名有关的后台进程,不影响用户体验,相当于一般的清理内存功能
am kill-all 杀死所有后台进程
10. adb shell pm
pm path <包名> 查看apk安装在手机后的路径
pm uninstall [-k] <包名> 卸载程序(-k:保留配置文件)
pm clear <包名> 清除应用缓存数据
11. 其他常用命令
adb help 显示帮助信息
adb version 显示adb版本
adb reboot 重启手机
adb shell am broadcast -a android.intent.action.MASTER_CLEAR(恢复出厂)
adb shell dumpsys window | grep init 查看手机的分辨率
adb logcat -s ActivityManager Activity的启动时间
abd 命令的更多相关文章
- 利用ADB命令强制卸载oppo自带浏览器
前言 oppo手机是自带oppo浏览器的,这个自带的浏览器带有oppo推荐的负面新闻很多,而且有时也自动推送一些消息给用户,页面不够简洁,打开浏览器负面内容比较多,所以想要强制卸载oppo浏览器,然后 ...
- Android & Eclipse FAQ
一.eclipse中格式化代码快捷键Ctrl+Shift+F失效的解决办法 当我要格式化代码的时候,右键-source-format能够起效,但ctrl+shift+f不好使了. google之后来发 ...
- Android远程桌面助手(Build 0662)
ARDC Build 0662, Jul 19, 2017 OPT: 1440*2560及以下分辨率设备,帧速能稳定在20帧~25帧 FIX: 拖拽文件的路径中包含空格的处理 ADD: 支持Ctrl+ ...
- 【辅助工具】Python实现微信跳一跳
最近迷上了微信跳一跳小游戏,正好也看到知乎上有大神分享了技术贴,我也参考了好多资料,原理就是通过abd命令截取图片,python计算两个点距离,然后转化按压时间,让电脑来完成游戏.我花了很长时间才把程 ...
- 小鸟初学Shell编程(五)输入输出重定向
重定向作用 一个进程默认会打开标准输入.标准输出.错误输出三个文件描述符. 重定向可以让我们的程序的标准输出.错误输出的信息重定向文件里,那么这里还可以将文件的内容代替键盘作为一种标准输入的方式. 重 ...
- adb(Andorid Debug Bridge)安装和使用
以下是adb工具包最新2017Google官方版下载地址: ADB和Fastboot for Windows https://dl.google.com/android/repository/plat ...
- react-native warn Failed to connect to development server using "adb reverse":
react-native环境搭建中的问题 本文环境说明:开发环境:window10专业版,目标平台:Android react: , react-native: java: 1.8.0_221 pyt ...
- 使用Scrcpy实现电脑控制安卓手机
很多时候我们想要在电脑上使用一些手机软件,使用模拟器当然是一种选择,但是这些模拟器要不然不免费,要不然广告多不放心.Scrcpy是一个开源免费的软件,通过abd命令实现了安卓手机投屏和控制功能,并且支 ...
- adb command not found / abd' 不是内部或外部命令,也不是可运行的程序 或批处理文件。最简易修改
此处提供最简易高效的方法 不需要添加.bash_profile 只需手动设置环境变量 1.打开环境变量设置页面:确保你ANDROID_HOME, JAVA_HOME已经设置好,我们针对abd的环境配置 ...
随机推荐
- T-SQL利用笛卡尔积累计、累加
T-SQL利用笛卡尔积累计.累加 笛卡尔积 --原始数据 select templateid,needitem1Count from db_tank..TS_CardMain --累计数据 selec ...
- 稀疏自动编码器 (Sparse Autoencoder)
摘要: 一个新的系列,来自于斯坦福德深度学习在线课程:http://deeplearning.stanford.edu/wiki/index.php/UFLDL_Tutorial.本文梳理了该教程第一 ...
- python 报错——Python TypeError: 'module' object is not callable 原因分析
原因分析:Python导入模块的方法有两种: import module 和 from module import 区别是前者所有导入的东西使用时需加上模块名的限定,而后者则不需要 例: >&g ...
- IDEA创建Tomcat8源码工程流程
上一篇文章的产出,其实离不开网上各位大神们的辅助,正是通过他们的讲解,我才对Tomcat的结构有了更进一步的认识. 但在描述前后端交互的过程中,还有很多细节并没有描述到位,所以就有了研究Tomcat源 ...
- 剑指offer 面试40题
面试40题: 题目:最小的k个数 题:输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,. 解题代码一: # -*- coding ...
- JavaScript:学习笔记(3)——正则表达式的应用
JavaScript:正则表达式的应用 应用正则表达式对象RegExp 创建正则表达式 JavaScript中使用RegExp对象来表述一个正则表达式.使用正则表达式之前首先要创建一个RegExp对象 ...
- Vimium~让您的Chrome起飞
工欲善其事,必先利其器!撸起Vimium,我的Chrome就这么起飞了. 学起(了解几个快捷键即可)And撸起Vimium,想黑客一般在Chrome上飞起.Vimium常用快捷键(注:区分大小写)j, ...
- Linux Shell编程 sed命令
概述 sed 是一种几乎可以应用在所有 UNIX 平台(包括 Linux)上的轻量级流编辑器,体积小.所以,它可以对从如管道这样的标准输入中接收的数据进行编辑. sed 主要是用来将数据进行选取.替换 ...
- [原创]spring及springmvc精简版--AOP
接上一篇:[原创]spring及springmvc精简版--IOC 理解AOP.java是一种面向对象的语言.而AOP是面向切面,在我看来是面向逻辑或者业务编程,它是对一组逻辑的抽象和分配. 经典例子 ...
- Linux 安装扩展yum源
Linux 安装扩展yum源 下载rpm扩展:http://rpmfind.net/linux/epel/6/x86_64/epel-release-6-8.noarch.rpm CentOS/RHE ...