首页 > 其他分享 >ADB学习记录

ADB学习记录

时间:2024-02-20 18:13:08浏览次数:39  
标签:包名 shell grep 查看 记录 学习 adb ADB 设备

 

      ADB安装

      1、adb下载,下载成功后,在本地解压;

           Windows版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip

      2、配置环境变量:把解压路径放到系统变量里去(Path);

         

     3、按ctrl+R,输入cmd,在命令窗口输入:adb version,显示adb版本信息,表示安装成功;

     ADB连接

     1、可以通过数据线连接手机或者连接模拟器;

         模拟器:按ctrl+R,输入cmd,在命令窗口输入:adb connect 127.0.0.1:7555;

         手机:在手机中,进入开发者选项,打开usb调试,adb tcpip 5555,adb connect 设备序列名;

    2、在命令窗口输入:adb devices,查看所有待连接的设备,adb get-serialno:也可以查看设备号;

    3、获取root权限:adb root,adb shell:登录设备 shell,该命令将登录设备的shell(内核),登录shell后,可以使用 cd,ls,rm 等Linux命令;

          adb remount:获取System分区可写权限,需要root后才能有这个权限;

          adb -d:如果同时连了usb,又开了模拟器,连接当前唯一通过usb连接的安卓设备;

          adb -e shell:指定当前连接此电脑的唯一的一个模拟器;

          adb -s <设备号> shell:当电脑插多台手机或模拟器时,指定一个设备号进行连接

    4、退出连接,输入exit,回车,即可成功退出;

    5、服务关闭与重启,关闭:abd  kill-server;重启:adb start-server;指定端口重启服务:adb -p 端口号 start-server;

    6、adb重启:adb reboot;

    ADB常用命令

    在未执行adb shell时,运行命令需要在原命令前面添加:adb  shell

    1、日志操作

          打印所有日志:adb  logcat;

          打印指定应用的日志:adb shell “logcat | grep com.hpbr.bosszhipin” ;设备进行连接后,可以直接输入:logcat | grep com.hpbr.bosszhipin,查看关于boss直聘相关的日志信息;

          把日志输出到指定文件:adb shell “logcat | grep com.hpbr.bosszhipin” >【文件保存路径】;

          清空日志:adb  shell  -c;

          打印级别为Error的信息:adb shell logcat -v time *:E > <存放路径\log.txt>,日志等级:-V:Verbse(明细),-D:Debug(调试),-I:Info(信息),-W:Warn(警告),-E:Error(错误),-F:Fatal(严重错误)

    2、文件操作

         把本地文件上传到设备上:adb shell push  本地文件路径  设备文件存放路径;

         从设备上下载文件到本地:adb shell  pull 设备文件路径   本地存放路径;

    3、应用操作

         查看当前设备所有包信息:adb shell pm list packages;

         查看当前设备安装的第三方应用信息:adb shell pm list packages -3;

         查看当前设备安装的系统包信息:adb  shell pm list packages -s;

         查看当前设备启用的包:adb  shell pm list packages -e;

         查看当前设备禁用的包:adb shell pm list packages -d;

         查看具体包的安装路径:adb shell pm path 包名;

         安装应用:adb install 【本地的apk文件路径】;若存在多个设备时,adb -s  设备序列号 install 【本地的apk文件路径】,覆盖安装:adb install -r 【本地的apk文件路径】;低版本安装:adb  isntall -d 【本地的apk文件路径】

                           为应用授予运行所需要的全部权限:adb install -g 【本地的apk文件路径】;

         卸载应用:adb uninstall 包名(不保留数据和缓存) adb uninstall  -k 包名(保留数据和缓存),adb shell pm clear 包名(清除数据及缓存)

         启用应用:

         系统本地应用:adb shell am start 包名

         系统第三方应用:adb shell am start -n 包名/Activity类名;-a,传入动作;-d,传入数据;-n,传入package;-t,传入类型

         示例:am start -a android.intent.action,CALL -d tel:【手机号】;  am start -a android.intent.action.VIEW -d https://www.baidu.com/   

         如何找到apk应用的活动名?

         1、在模拟器或者手机上打开apk文件;

         2、在命令行窗口输入:adb  logcat | find “START”或者adb shell "dumpsys activity activities |grep com.hpbr.bosszhipin ",找到对应的活动名,如下图:

        退出应用:abd shell am force-stop 包名

   4、截屏录屏分辨率

        截屏:adb shell screencap /sdcard/sca.png;

        录屏:adb shell screenrecord /sdcard/scr.mp4;

        录屏,指定分辨率:adb shell screenrecord --size 1280*720 /sdcard/scr.mp4;

        录屏,指定比特率:adb shell screenrecord --bite-rate 6000000 /sdcard/scr.mp4;

        录屏,指定时间:adb shell screenrecord --bite-rate 6000000 --time-limit 10  /sdcard/scr.mp4;

        查看分辨率,adb shell wm size;

        修改分辨率,adb shell wm size 1148x2480;

        重置分辨率,adb  shell wm size reset;

   5、模拟输入、按键、鼠标点击、鼠标滑动

        在模拟操作前,需要获取对应操作区域的坐标,在命令行窗口,输入:adb shell "getevent  | grep -e "0035" -e "0036"",在设备进行点击操作,在命令行窗口会打印出对应操作区域的坐标信息,如下图:

        

        其中,红框区域,003 0035和003 0036是我们所需要的坐标信息;坐标为16进制,需要转换为10进制;

       模拟点击:adb shell input tap 190 780;

       模拟

        

   5、查看进程及性能相关信息

       查看具体应用的进程信息:adb shell "ps  |grep com.hpbr.bosszhipin",或者adb shell ps | findstr 包名;

       杀死某个APP进程:adb shell am force-stop 包名,或者adb shell kill pid;

       查看正在运行的进程:adb shell top;

       查看你手机存储信息:adb  shell df;

       查看手机当前电量信息:adb shell dumpsys battery;

       查看手机内存信息:adb shell cat /proc/meminfo;

       adb shell dumpsys 【options】 meminfo 内存信息;cpuinfo cpu信息;accounts  account信息;activity  所有activity信息,后面跟activities |grep  具体包名,或者| grep 包名;diskstatus  所有磁盘使用情况; batterystatus  手机电量信息;

标签:包名,shell,grep,查看,记录,学习,adb,ADB,设备
From: https://www.cnblogs.com/xiaobingdiaoyu/p/18023045

相关文章

  • 开始学习web-sql注入
    web内容多且杂,不知道怎么下手开始学,那就先从sql注入开始学吧目前只在b站上找了一些课程,还有ctfwiki作为参考链接贴在下面:ctfwikihttps://www.bilibili.com/video/BV1c34y1h7So/?spm_id_from=333.337.search-card.all.click&vd_source=27b6c7c9811379b1cf1a595591fa3086要是能......
  • Markdown学习
    Markdown学习二级标题三级标题四级标题字体Hello,World!Hello,World!Hello,World!Hello,World!引用学习java,自律起来分割线图片超链接[点击跳转到ranxx博客](ranxx-博客园(cnblogs.com))列表ABCABC表格名字性别生日张三男1997.1.......
  • Vue学习笔记 1-- 环境搭建
    第一步:安装vscode第二步:安装nodejs--node-v14.17.6-x64(需要注意版本--版本过高或过低均会导致程序打包运行问题)——一路默认,会安装对应的npm注:版本和程序中使用的依赖包不一致会导致各种打包异常......,因此需根据自身项目实际情况安装对应版本==>程序打包问题npmi/npmi......
  • 初中英语优秀范文100篇-085How to Deal with Our Study Problems-如何处理我们的学习
    PDF格式公众号回复关键字:SHCZFW085记忆树1Althoughweoftenfeelstressed,weshouldfindsuitablewaystodealwithstress.翻译虽然我们经常感到有压力,但我们应该找到合适的方式来应对压力。简化记忆压力句子结构Althoughweoftenfeelstressed是一个让步......
  • 李宏毅《机器学习》总结 - 2022 HW8(Anomaly Detection、ResNet) Strong Baseline
    重新学习了一下ResNet。。这作业平均一跑就是3、4个小时题目大意是让你做异常检测(anomalydetection),即给你一些正常的图片,再让你测试图片是正常的还是异常的(可以理解为2分类问题,只不过其中一个类别是无限大的)代码:https://www.kaggle.com/code/skyrainwind/hw8-anomaly-detec......
  • 打歌记录
    llllhlllhlllllhlllhlllhllllhlllllhlllllllllllhllllhlllhllllllllllllllhlhlhlhlllllllllllllhlhllllhlhlllhllhlhllllhlhllhlhlllllllllllllllllllllllllllllljljlllhlllllllllllllllhlhllhlhlhlllllhllhlhlllhlllllllhlhllhlllhllllllllllhlhlhlhlllhllhlhlhlhlhlllllhlll......
  • [学习笔记]哈希与哈希表
    1.定义我们定义一个把字符串映射到整数的函数\(f\),这个\(f\)称为是Hash函数。我们希望这个函数\(f\)可以方便地帮我们判断两个字符串是否相等。词汇“映射”映射意为将一个集合中的任意元素和另一个集合中的元素一一对应。(请大佬指正)2.思想Hash的核心思想在于,将输入......
  • 热辣滚烫,Salesforce开发入门指南:零基础学习宝典!
    开发人员将Salesforce组织扩展到声明式配置之外,构建应用程序,进而优化业务运营。Salesforce开发人员通常会使用两种编程语言:Apex和JavaScript。然而,Salesforce开发不仅仅只包括代码。为了在职业道路上脱颖而出,开发人员还需要了解声明性功能,将组织的设计和性能保持最佳状态。Sal......
  • 深度学习学习一
    深度学习(DL,DeepLearning)是机器学习(ML,MachineLearning)领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能(AI,ArtificialIntelligence)。深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解......
  • Sentinel 源码学习
    引入依赖<dependency><groupId>com.alibaba.csp</groupId><artifactId>sentinel-core</artifactId><version>1.8.7</version></dependency>基本用法try(Entryentry=SphU.entry("HelloWorld")){......