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

我们使用 adb -h 来看看,adb命令里面包含了多少子命令:

C:\Windows\System32>adb -h
Android Debug Bridge version 1.0.31
 
一、列出所有的可连接Android设备
C:\Windows\System32>adb devices
List of devices attached
emulator-5556 device
 
    第一列返回的就是设备的serialNumber,如果我们的机器上有多台android设备,可以使用该serialNumber去指定对应的唯一的Android设备去执行。
    使用adb get-serialno也可以获取得到serialNumber。
 
    执行结果是adb为每一个设备输出以下状态信息:序列号(serialNumber) — 由adb创建的使用控制台端口号的用于唯一标识一个模拟器
或手机设备的字符串,格式是 <设备类型>-<端口号>,例如: emulator-5554
    状态(state) — 连接状态,其值是: offline — 未连接或未响应 
device —已经连接到服务商。注意这个状态并不表示Android系统已经完全启动起来,
    系统启动的过程中已经可以连接adb,但这个状态是正常的可操作状态。
 
二、操作指定的模拟器或手机 
    如果有多个模拟器或手机正在运行,当使用adb命令的时候就需要指定目标设备,这可以通过使用-s选项参数实现,用法是:adb -s  
    即可以在adb命令中使用序列号指定特定的目标,前文已经提到的devices命令可以实现查询设备的序列号信息。 
    例如: adb -s emulator-5556 install helloWorld.apk 
    需要注意的是,如果使用了-s而没有指定设备的话,adb会报错。
 
三、安装应用程序 
    可以使用adb从开发用电脑中复制应用程序并且安装到模拟器或手机上,使用install命令即可,在这个命令中,必须指定待安装的.apk文件的路径:     adb install
    关于创建可安装的应用的更多信息,请参见Android Asset Packaging Tool (aapt). 注意,如果使用了安装有ADT插件的Eclipse开发环境,就不需要直接使用adb或aapt命令来安装应用程序了,ADT插件可以自动完成这些操作。
    对应的卸载命令是adb uninstall
 
四、转发端口 
    可以使用forward 命令转发端口 — 将特定端口上的请求转发到模拟器或手机的不同的端口上。下例是从6100端口转到7100端口:
    adb forward tcp:6100 tcp:7100 
    也可以使用UNIX命名的socket标识: adb forward tcp:6100 local:logd
 
五、与模拟器或手机传输文件 
    可以使用adb的 pull 和 push 命令从模拟器或手机中复制文件,或者将文件复制到模拟器或手机中。与 install 命令不同,它仅能复制.apk文件到特定的位置, pull 和 push 命令可以复制任意文件夹和文件到模拟器或手机的任何位置。 从模拟器或手机中复制一个文件或文件夹(递归的)使用:     adb pull  
 
    复制一个文件或文件夹(递归的)到模拟器或手机中使用:     adb push  
    
    在这个命令中和引用的是文件或文件夹的路径,在开发用电脑上的是local,在模拟器或手机上的是remote。 例如:     adb push foo.txt /sdcard/foo.txt
 
六、同步备份adb sync
 
    使用步骤:
    1、将Android设备上的/system或者/data目录拷贝到本地的一个路径,例如我本地是E:/Android
    2、如果Android设备上的/system或者/data目录修改了,想还原这两个文件夹,那么使用adb sync即可
 
    感觉这个命令没有多大用处,就是一个备份。
 
七、查看Android的运行日记信息
adb logcat
posted @ 2018-01-26 18:04  思江  阅读(679)  评论(0编辑  收藏  举报