开发过程中可能用到的adb命令

141 阅读1分钟

开发过程中可能用到的adb命令

  1. 应用相关

    1. 安装应用

      adb install -d -r [xxx.apk]
      
    2. 查看进程

      adb shell ps | findstr [包名]
      
    3. 杀应用

      adb shell am force-stop [包名]
      
    4. 清楚应用数据(过程会杀应用)

      adb shell pm clear [包名]
      
    5. 获取当前窗口信息

      adb shell dumpsys activity | findstr "mResume
      
  2. 日志相关

    1. 查看 app 闪退崩溃crash的信息

      adb logcat -s AndroidRuntime
      
    2. 获取帮助(developer.android.google.cn/studio/comm…

      adb logcat --help 
      
    3. 通过包名过滤日志&去除无效日志,并输出到txt文件

      前置知识:

      windows cmd 命令 find 过滤字符串

      find /?
      

      windows 获取当前格式化日期时间作为日志文件名

      参考:blog.csdn.net/u013986802/…

      www.cnblogs.com/daysme/p/65…

      if %time:~0,2% LEQ 9 (set fileName=%date:~0,4%-%date:~5,2%-%date:~8,2%..0%time:~1,1%_%time:~3,2%_%time:~6,2%) else (set fileName=%date:~0,4%-%date:~5,2%-%date:~8,2%..%time:~0,2%_%time:~3,2%_%time:~6,2%)
      echo %fileName%
      ​
      输出:2023-03-10..10_12_53
      
      1. 新建getpid.bat文件,并添加如下内容

        @echo off
        adb shell "ps | grep [包名]"
        
      2. 新建logToFile.bat文件,并添加如下内容

        @echo off
        for /f  "tokens=2 delims= " %%i in ('getpid.bat') do set pid=%%i
        echo %pid%
        if %time:~0,2% LEQ 9 (set fileName=%date:~0,4%-%date:~5,2%-%date:~8,2%..0%time:~1,1%_%time:~3,2%_%time:~6,2%) else (set fileName=%date:~0,4%-%date:~5,2%-%date:~8,2%..%time:~0,2%_%time:~3,2%_%time:~6,2%)
        echo %fileName%
        adb logcat | find  "%pid%" | find /V "registerEngineeringModeCallback lis" | find /V "CommonSettingsViewModel: EngineeringEventCallback" >> %fileName%.txt
        pause