美文网首页
adb命令的使用

adb命令的使用

作者: Xyxtank | 来源:发表于2019-10-30 19:17 被阅读0次

一、连接真机或者模拟器

adb connect 127.0.0.1:62001

注意:这里连接的是夜神模拟器的端口号是62001,注意默认第一台模拟器端口是62001

若要连接多台夜神模拟器,首先要开启模拟器,然后,再查看任务管理器中程序PID

然后,启动命令窗口CMD模拟器所监听的端口

netstat -ano | findstr "6356"

结果:

C:\Users\Administrator>netstat -ano | findstr "6356"
  TCP    127.0.0.1:56033        0.0.0.0:0              LISTENING       6356
  TCP    127.0.0.1:57001        0.0.0.0:0              LISTENING       6356
  TCP    127.0.0.1:58031        0.0.0.0:0              LISTENING       6356
  TCP    127.0.0.1:60001        0.0.0.0:0              LISTENING       6356
  TCP    127.0.0.1:61025        0.0.0.0:0              LISTENING       6356
  TCP    127.0.0.1:62026        0.0.0.0:0              LISTENING       6356
  TCP    127.0.0.1:63027        0.0.0.0:0              LISTENING       6356
  TCP    127.0.0.1:64028        0.0.0.0:0              LISTENING       6356

经过测试,发现62026能连接成功

adb connect 127.0.0.1:62026

查看设备连接情况

C:\Users\Administrator>adb devices
List of devices attached
127.0.0.1:62001 device
127.0.0.1:62026 device

二、查看连接设备

获取当前电脑连接设备和对应的设备号

adb devices

结果,显示连接一台手机:

C:\Users\Administrator>adb devices
List of devices attached
127.0.0.1:62001 device

如果没有连接好,(真机)需要检查数据线是否连接好,是否下载好相应的驱动,是否打开开发者模式。更详细的信息可以参考:https://github.com/mzlogin/awesome-adb

然后再打开调试模式,再检查端口是否被占用(adb的默认端口号是5037),检查端口号是否被占用命令:

netstat -ano | findstr 5037

三、安装包

在手机安装对应的app应用,首先在电脑上准备好对应的包(apk文件)

adb install 路径/xx.apk

四、卸载包

卸载app

adb uninstall 包名

五、获取包名和界面名(启动名)

  • 第一种命令

    linux和mac平台的命令格式:

    adb shell dumpsys window windows | grep mFocusedApp
    

    windows平台的命令格式:

    adb shell dumpsys window windows | findstr mFocusedApp
    

    结果:

    mFocusedApp=AppWindowToken{3273c86a token=Token{db90655 ActivityRecord{18b42d0c u0 com.android.contacts/.activities.PeopleActivity t2}}}
    

    其中,com.android.contacts为包名,.activities.PeopleActivity为界面名

  • 第二种命令

    另外,也可以用以下命令获取当前开启应用的包名

    adb shell dumpsys activity | find "mFocusedActivity"
    

    结果:

    mFocusedActivity: ActivityRecord{15300bd2 u0 com.tencent.mm/.ui.LauncherUI t3}
    

    注意:该命令在Android 8.0之下可以使用,8.0以上会存在问题,修改命令如下即可:

    adb shell dumpsys activity | find "mResumeActivity"
    

六、发送文件到手机

将需要的数据文件或者数据库文件在电脑上创建好,然后推送到手机

命令格式:adb push 电脑的文件路径 手机的文件夹路径

adb push C:\temp\TimeLog\a.txt  /sdcard

发送后成功后,在手机端刷新即可见到文件。

若不成功,可能是没有获取到设备的读写权限,所以需要先获取设备的读写权限。命令如下:

adb remount

然后,再获取root操作权限

adb root

七、从手机拉去文件至电脑

将需要修改的数据文件拉取至电脑,便于编辑和修改

命令格式:adb pull 手机的文件路径 电脑的文件夹路径

adb pull /sdcard/b.txt  C:\temp\TimeLog\ 

若不成功,可能是没有获取到设备的读写权限,所以需要先获取设备的读写权限。命令如下:

adb remount

然后,再获取root操作权限

adb root

八、获取app启动时间

测试的时候需要考虑app启动的时间,提高用户体验。注意:不要超过同类型软件app的启动时间的一倍。

adb shell am start -W 包名/界面名

解释:
ThisTime: 0
TotalTime: 0 #app自身启动时间
WaitTime: 7 #系统启动应用时间

注意:-W是大写。

九、获取手机日志

便于开发人员定位程序bug

adb logcat

查看后,可以用CTRL + C 退出查看日志。

为了方便,有时候想要将日志导入到电脑可以使用如下方法:

adb logcat > D:\test.txt

也可以通过滤其他的应用,专注查看某应用的log

adb logcat | grep 包名

这样就会只查看当前打开应用的log信息,不过需要先获取应用的包名

adb shell dumpsys window windows | findstr mFocusedApp

十、手机shell命令

进入安卓手机系统内部的linux系统命令中,exit退出

adb shell

进入shell后可以做很多的事情,比如查看当前应用的CPU使用情况

root@shamu:/ # top | grep 包名

十一、其他命令

序号 命令 说明
01 adb kill-server 终止adb服务
02 adb start-server 启动adb服务
03 adb --help 帮助
04 adb remount 获取设备的读写权限

相关文章

网友评论

      本文标题:adb命令的使用

      本文链接:https://www.haomeiwen.com/subject/xhravctx.html