认识使用android adb命令详解实例

Android adb shell命令详解及实例

adb作用

  • 运行设备的shell(命令行)
  • 管理模拟器或设备的端口映射
  • 计算机和设备之间上传/下载文件
  • 将本地apk软件安装至模拟器或android设备
  • 通过ADB命令查看wifi密码、MAC地址、设备信息、操作文件、查看文件、日志信息、卸载、启动和安装APK等

adb安装

ADB是一个客户端-服务器端程序,其中客户端是你用来操作的电脑,服务器端是android设备。先说安装方法,电脑上需要安装客户端。客户端包含在SDK里。设备上不需要安装,只需要在手机上打开选项-设置-应用程序-USB调试(4.0+:设备-开发人员选项)。adb有各个系统的版本:Liunx,Mac,Windows,根据你自己的操作系统来选择要下载的Android SDK就可以使用adb命令了。

adb命令使用格式

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

adb是必须的,接下来方括号[]里面的内容不是必须的,最后才是我们需要执行的命令操作,例如 adb -s emulator-5554 install qq.apk (这是安装QQ的意思)

下面先介绍下,前面几个参数的含义吧:

  -d: 让唯一连接到该PC端的真实安卓设备执行命令,如果发现USB中连接有多部设备,将会报错

  -e: 让唯一连接到该PC端的模拟器执行命令,如果发现开启了多个模拟器,将会报错

  -s:通过设备的序列号进行指定设备执行命令

如果设备只连接有一个设备或者一个模拟器的时候,可以不用声明这三个参数,adb默认会让这部唯一连接到的设备进行命令执行。

adb常用命令

1) 查看当前PC端连接有多少设备:

adb devices

返回:

> adb devices
List of devices attached
emulator-5554   device
127.0.0.1:5555  offline
127.0.0.1:5561  device

我们看到了设备有的两种状态,其实执行该命令,可能返回的状态有三种:

  1. device 设备已经成功连接到了adb-server

  2. offline 设备并没有连接到adb或者没有响应

  3. no device 并没有设备/模拟器连接
2) 查看adb的版本

adb version

返回:

> adb version
Android Debug Bridge version 1.0.31

3)重启机器

 adb reboot

4)重启到bootloader,即刷机模式

 adb reboot bootloader

5)重启到recovery,即恢复模式

 adb reboot recovery

重启有三种方式:
直接重启设备回到使用界面adb reboot即可
重启设备到bootloader引导模式:adb reboot-bootloader或adb reboot bootloader
重启到recovery刷机模式:adb reboot recovery
6)查看log

 adb logcat

7)终止adb服务进程

  adb kill-server

这样可以关闭adb服务进程,有时正在使用adb,然后想删除adb,那这时你得先关闭进程才了删除,就要用到它了。
8)重启adb服务进程

   adb start-server

使用adb devices命令时就已经自动开启了。
9)显示帮助信息

  adb help

10)获取设备的连接状态

adb -s <serialNumber> get-state

返回设备状态,有三种结果:关机,引导模式,设备在线
11)获取连接到的手机的序列号

adb get-serialno

返回设备序列号SN值
12)获取设备的ROOT权限

adb remount

通过这个命令就可以获取设备的ROOT权限,可以通过adb操作/system等系统目录,如

adb push xx.app /system/app

即可将app应用直接放入系统目录。这个操作必须机子已解锁并ROOT过。
13)给指定设备安装apk

adb install [-r] [-s]
这个命令将指定的apk文件安装到设备上.
-r 强制安装(在某些情况下可以已有些应用程序在运行或不可写,可加上此参数强制安装)
-s 将apk文件安装在SD-Card
adb -s <serialNumber> install <path-to-apk>
eg:
adb -s emulator-5554 install D://511yj.apk

除了上面这种方法,我们还有另外一个命令:

  1. adb -s <serialNumber> shell pm install [options] <PATH>

其中[options]中最常用的选项是-r,代表着本次安装是重新安装,会保留用户数据。
14)卸载设备中已经安装的软件apk

adb uninstall [-k] <软件名>

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

adb -s <serialNumber> uninstall <pkg_name>
eg:
adb -s 99eb07a9 uninstall cn.uc.511yj

除了上面这种方法,我们还有另外一个命令:

adb -s <serialNumber> uninstall [options] <PACKAGE>

这里的options是-k,加上该参数表明卸载软件后依旧保留用户数据
15)电脑上的文件或文件夹传到模拟器里面

adb push <本地路径> <远程路径>
adb -s <serialNumber>push <local> <remote>

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

adb -s emulator-5554 push d:/511yj.avi  /mnt/

把本地D盘根目录下的511yj.avi 复制到 模拟设备/mnt/
16)模拟器里面的文件或文件夹传到电脑上

adb pull <远程路径> <本地路径>
adb -s <serialNumber>pull <remote> <local>
adb -s emulator-5554 push /sdcard/511yj-ls D://

执行后我们发现本地D盘根目录下有了511yj-ls文件
17)等待设备连接成功

adb wait-for-device

该命令将会阻塞一直到默认连接的那部机器状态变为device,也就是连接成功。


发布日期:

所属分类: 编程 标签:  


没有相关文章!