Android开发需要知道的ADB
来源:互联网 发布:试用期被辞退补偿知乎 编辑:程序博客网 时间:2024/04/28 02:24
Android开发需要知道的ADB
版权声明:
本公众号发布的所有文章,均属于原创,版权归本公众号所有。
允许有条件转载,转载请附带底部二维码。
ADB是什么?
ADB的全称是Android Debug Bridge,翻译过来就是Android调试桥。顾名思义,主要用于PC端和Android设备调试连接的作用。从最早的Eclipse到现在的Android Studio,其实底层和Android设备的链接,都是依赖的ADB去做的。
当下载好Android SDK之后,就可以在platfrom-tools中看到adb的运行程序了。当然单独下载adb也是可以的。
最后还需要在环境变量里配置好ADB的命令,就可以正常使用了。
在Terminal中,输入adb version,能出现当前adb的版本号,就表示已经配置完成。
基础的ADB命令
虽然ADB的命令非常的强大,使用起来也非常的方便,但是实际上,我们在工作中,常用的也就那么多,掌握了基本的用法,就可以应对80%的情况。长期不用本身也会比较容易忘记,到时候查阅一下文档即可。
1、查看当前连接设备
可以通过adb devices命令,查看当前已经连接的设备。注意这里的设备可能来自USB线,也可能来自IP地址的链接。
2、关闭和启动服务
正常来说,adb的服务,在连上设备的时候,就是一直在后台保持运行的。但是偶尔会出现一些其他的软件争抢权限的问题。通常来说,把ADB的服务杀掉重新启动,大部分问题都可以得到解决。
3、安装APK
安装应用是比较常见的操作,通常用adb install就可以解决安装的问题,但是有时候会有一些 安装的apk版本号的限制,例如没法从低版本覆盖安装设备上高版本的情况。这个时候可以添加-r参数,即可完成强制覆盖安装。
4、卸载APK
卸载APK,是需要输入需要卸载的APK的包名,才可以正常卸载。
5、上传文件到设备
可以通过push命令,将电脑上的文件,上传到手机中,如果不需要重命名,最后指向目录即可,如果需要重命名,跟在目录后面即可,符合Linux命令的风格。
6、下载文件到电脑
可以通过pull命令,将手机上的文件,下载到电脑上。可以指定目录和文件名,如果不指定,会把文件下载到当前的用户目录下。
7、进入shell环境
Android底层本身也是Linux系统,同样有自己的shell环境,通常可以执行一下常用的Linux命令。这里不展开讲解了。
8、通过ip连接设备
可以通过IP链接涉笔。端口号默认是5555,只要没有修改,这里可以不需要填写端口号。
9、断开通过ip连接的设备
通过disconnect断开的连接,只能是通过IP进行连接的设备,通过USB连接的设备,不会被disconnect命令断开。
同时操作多个设备
掌握上面几个常用的命令,基本上就可以满足正常工作中80%的需求。但是有一点,上面的安装、卸载等命令,仅适用于操作单个设备的情况。如果同时连接多个设备,可以通过-s参数来区分设备进行操作。
通过-s参数,虽然可以指定设备进行操作,但是通常我自己也不这么干,因为输入设备ID真的太麻烦了。通常为了偷懒,都是拔掉一个设备,保持当前只有一个设备在连接。当然,写一些脚本来操作的时候,必须保证多个设备同时连接,这个方法就非常的实用了。
## 查看帮助文档
当然,ADB命令远远不止本文讲解的几个,在一些特殊的情况下,还有一个参数可以配置,这里就不展开讨论了。如果有忘记的命令,可以使用help命令查看帮助文档。
结语
到这里基本上讲明白ADB的一些常用操作,对于ADB命令而言,开发是必须熟练掌握的,测试通常是掌握一些常用命令就可以了。
- Android开发需要知道的ADB
- android开发需要知道的
- Android 开发需要知道的一些基本概念
- Android开发需要知道的几个开源库
- 那些做Android开发必须知道的ADB命令
- 那些做Android开发必须知道的ADB命令
- 那些做Android开发必须知道的ADB命令
- adb shell获取root权限 因为开发需要,我经常会用到adb这个工具(Android Debug Bridge),我们都知道adb shell默认是没有root权限的,修改系统文件就很不方便
- 开发一个Android应用之前你需要知道的六件事
- Android N开发 你需要知道的一切
- Android 开发中需要知道的注解基础
- Android开发你需要知道的注解(Annotation)
- Android开发 你应该知道的adb 命令(持续更新)
- docnet 开发需要知道的网站!()
- 网站开发 你需要知道的几件事
- 网站开发 你需要知道的几件事
- unity3d开发需要知道的一些常量
- IOS开发-需要知道的一些事情
- Hibernate4 关联关系的映射案例
- uva 10594Data Flow
- Android一键压缩Git提交的图片
- OpenStack删除Cinder盘失败解决办法
- Ecs6扫盲
- Android开发需要知道的ADB
- Gradle多渠道打包实例
- Storage事件无法触发解决
- Ceph:一个 Linux PB 级分布式文件系统
- 2017-已经真正地步入社会了,有迷茫也有想法
- var a = console.log(123)
- macos 安装maven org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0
- 九度OJ-1008:最短路径问题
- AS和Git配合更好哦