这里使用天天模拟器进行,在D:\ttmnq\deployed\TianTian\TianTian.vbox ,查看到天天Adb port为6555。
接着cmd命令 cd 到android sdk的目录 C:\Users\xxx\AppData\Local\Android\sdk\platform-tools,输入命令adb connect 127.0.0.1:6555
连接成功
adb 命令
在开发或者测试的过程中,我们可以通过 adb 来管理多台设备,其一般的格式为:
adb [-e | -d | -s <设备序列号>] <子命令>
在配好环境变量的前提下,在命令窗口当中输入 adb help 或者直接输入 adb ,将会列出所有的选项说明及子命令。
这里介绍一些里面常用的命令:
-
adb devices , 获取设备列表及设备状态
[xuxu:~]$ adb devices List of devices attached 44c826a0 device
-
adb get-state , 获取设备的状态
[xuxu:~]$ adb get-state device
设备的状态有 3 钟,
device
,offline
,unknown
device:设备正常连接
offline:连接出现异常,设备无响应
unknown:没有连接设备 -
adb kill-server , adb start-server , 结束 adb 服务, 启动 adb 服务,通常两个命令一起用
一般在连接出现异常,使用 adb devices 未正常列出设备, 设备状态异常时使用 kill-server,然后运行 start-server 进行重启服务
-
adb logcat , 打印 Android 的系统日志,这个可以单独拿出来讲
-
adb bugreport , 打印dumpsys、dumpstate、logcat的输出,也是用于分析错误
输出比较多,建议重定向到一个文件中
adb bugreport > d:\bugreport.log
-
adb install , 安装应用,覆盖安装是使用 -r 选项
windows 下如果需要安装含有中文名的 apk ,需要对 adb 进行修改,百度可以找到做出修改的adb , 支持中文命令的 apk,请自行搜索
-
adb uninstall , 卸载应用,后面跟的参数是
应用的包名
,请区别于apk 文件名
'-k' means keep the data and cache directories , -k 选项,卸载时保存数据和缓存目录
-
adb pull , 将 Android 设备上的文件或者文件夹复制到本地
例如复制 Sdcard 下的 pull.txt 文件到 D 盘:adb pull sdcard/pull.txt d:\
如果需要重命名为 rename.txt:
adb pull sdcard/pull.txt d:\rename.txt
注意权限,复制系统权限的目录下的文件,需要 root ,并且一般的 Android 机 root 之后并不能使用命令去复制,而需要在手机上使用类似于 RE 的文件浏览器,先对系统的文件系统进行挂载为可读写后,才能在手机上复制移动系统文件,这里推荐使用小米手机的开发版本,IUNI 也是不错滴~~
-
adb push , 推送本地文件至 Android 设备
例如推送 D 盘下的 push.txt 至 Sdcard:adb push d:\push.txt sdcard/
sdcard 后面的斜杠不能少,否则会出现下面的错误:
[xuxu:~]$ adb push push.txt sdcard failed to copy 'push.txt' to 'sdcard': Is a directory
权限问题同 pull 命令
-
adb root , adb remount, 只针对类似小米开发版的手机有用,可以直接已这两个命令获取 root 权限,并挂载系统文件系统为可读写状态
-
adb reboot , 重启 Android 设备
bootloader , 重启设备,进入 fastboot 模式,同 adb reboot-bootloader 命令
recovery , 重启设备,进入 recovery 模式,经常刷机的同学比较熟悉这个模式 -
adb forward , 将 宿主机上的某个端口重定向到设备的某个端口
adb forward tcp:1314 tcp :8888
执行该命令后所有发往宿主机 1314 端口的消息、数据都会转发到 Android 设备的 8888 端口上,因此可以通过远程的方式控制 Android 设备。