1、adb工具构成及原理
- adb 包含了三个部分
- adb客户端 用来下发adb的指令工具
- Server 客户端 adb.exe执行之后的进程,表示adb的服务端,通过服务端与手机上的adb守护进程进行 通信
- adb守护进程 随着Android系统的启动而启动,当Android系统关闭之后它才会关闭
2、adb常用命令
2.1adb常用命令(常看设备、启动关闭adb服务)
如果是真机,不要使用一带多接头的数据线,否则找不到手机设备
mac启动:
- adb devices 常看手机的设备ID名称以及状态
emulator-5554 device emulator-5554表示的是?机设备的ID名称, device表示设备处于在线状态,
如果不在线显示的是offlfflffline 如果adb服务没有启动,下发该命令时,会?动的去启动adb的服务- adb start-server 启动adb服务
- adb kill-server 关闭adb 服务
Windows启动:
打开MuMu模拟器,点击右上角三条杠-功能教程-连接adb,然后跳转到网页复制MuMu模拟器的端口
启动Windows PowerShell命令窗口,输入MuMu模拟器端口
2.2 获取包名和界界面名
- 包名: app包名 ,通过app的包名来区分不同的app,app包名是唯 ?的
- 界?名(启动名): 相当于web??当中的链接地址,在app当中,每个界?都有?个名字
- 操作步骤: adb命令
- 在?机或者模拟器上?打开app
- windows命令?:adb shell dumpsys window windows | fifindstr mFocusedApp
- windows命令?: adb shell dumpsys window |fifindstr "usedApp"
com.android.settings/.Settings com.android.settings是包名, .Settings是界?名 通过 / 分隔包名和界?名
LINUX/MacOS命令?: adb shell dumpsys window windows | grep mFocusedApp
LINUX/MacOS命令?: adb shell dumpsys window |grep "usedApp" 先启动一个app输入以上windows命令?与windows命令?
- 通过aapt获取app的包名和界?名
- aapt dump badging D:BaiduNetdiskDownloadapptoolsapkxuechebu.apk 后?表示 的是app安装包的路径及名称
-
- 包名: package: name=‘com.bjcsxq.chat.carfriend‘ # package:name 后?的字符串表示 的是app的包名
-
- 界?名: launchable-activity: name=‘com.bjcsxq.chat.carfriend.module_main.activity.SplashActivity‘ launchable activity: name后?的字符串是界?
2.3 安装卸载app
- app安装 adb install 路径/app安装包名称
- app卸载 adb uninstall 包名
2.4 上传下载?件
- 上传 将电脑上的?件上传到?机
- 下载?件 从?机上下载?件到本地
2.5 查看?志信息
- 为什么要获取?志信息:?来给开发定位问题。
- adb logcat 来查看相关的?志信息
2.6 测试app的启动速度(性能测试)
- 测试app启动速度的命令:
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER]cmp=com.baidu.homework/.activity.user.passport.ChoiceLoginModeActivity } Status: ok Activity: com.baidu.homework/.activity.user.passport.ChoiceLoginModeActivity ThisTime: 3345 TotalTime: 3345 WaitTime: 3378
- 需要?家关注的是TotalTImie的时间值,那么在实际的测试过程当,会进?多次测试,然后取平均值。
adb工具
原文:https://www.cnblogs.com/hzmm/p/14992569.html