常见adb使用环境及涉及指令

本文介绍了ADB(AndroidDebugBridge)工具的一系列命令,包括查看系统信息、管理设备和用户、安装/卸载应用、文件传输以及性能监控。此外,还提到了如何使用adb进行屏幕录制和分析应用启动时间,以及通过ffmpeg转换视频进行细节分析。
摘要由CSDN通过智能技术生成

查看系统信息

  • adb shell: 进入安卓系统内部
  • adb devices: 查看设备ID
  • adb shell getprop ro.build.version.release: 查看设备Android版本
  • adb shell pm list users: 查看用户列表
  • adb shell pm list package: 列举出手机中所有的package
  • adb shell pm list package -3: 列举出所有自行安装的第三方应用package

针对软件操作

  • adb install <安装包路径>: 安装apk包到手机中
  • adb uninstall <package_name>: 卸载应用
  • adb pull <手机中文件路径> <文件下载后存放路径>: 将手机中的文件下载到本地
  • adb push <文件路径> <上传后的存放路径>: 将文件上传到手机中
  • adb shell dumpsys activity | grep “mFocuse”: 获取手机当前的页面信息acticity信息
  • adb shell monkey -p <package_name> -v -v -v 1: monkey执行应用1次并返回最高级别(最详细)日志
  • adb shell dumpsys window | grep mCurrent 获取当前页面的信息

1. app的完全清除

adb shell pm clear <package> 清理app缓存数据
adb shell am force-stop <package> 停止进程
经过上述两条命令之后再启动app时将会进行app的冷启动

2. 启动app/activite并统计时间

adb shell am start -S -W <package>/<activity> 启动指定app对应的activity

  • S:启动前先停掉app
  • W:等待activity启动完成
  • 启动成功后会在控制台返回日志,如下
    PS C:\Users\wyun2> adb shell am start -S -W <package>/<activity>
    Stopping: <package>
    Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=<package>/<activity> }
    Status: ok
    Activity: <package>/<activity>
    ThisTime: 874
    TotalTime: 874
    WaitTime: 877
    Complete
    
    其中 ThisTimeTotalTimeWaitTim 的解释可参考文章:Android之App启动时间的统计方法

3. 录制屏幕及拆针分析

有时我们期望分析单一页面的跳转耗时,通过录屏并拆针后进行推测也许是个不错的方法(需要利用 ffmpeg

  • adb shell screenrecord --bugreport --time-limit <time> <path> 进行录制
    • time:录制时间,单位为秒
    • path:视频存放目录,该目录为移动设备下的目录,通常可设置为 /data/local/tmp/record.mp4
  • adb pull <path> <local_path> 将录制好的视频下载到本地
  • ffmpeg -i <local_path.mp4> -r <帧数> <文件名> 将视频转换为gif格式的动图
    • 其中帧数代表将1秒拆成几帧。如设置为10,则意味着每0.1秒为一帧作为图片保存
    • 文件名是保存图片时命名的格式。如 frames_%03d.jpg 代表文件名需要以 frames_ 开头,并以三位数字计数,当不满三位时在数位前用0补充,最后文件后缀为 .jpg
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值