当前位置: 首页 > article >正文

逆向学习系列(三)adb的使用

由于是记录学习,我就用结合自己的理解,用最通俗的语言进行讲解。

adb是android debug bridge的简写,其作用就是将电脑和手机相连接,用电脑控制手机。

一、adb哪里来

我使用的adb一般都是安装模拟器的时候,模拟器自带的。

比如我安装的是逍遥模拟器,在安装路径下,有一个adb.exe。

可以设置一下环境变量。

当然,也可以从谷歌官网上下载。

二、adb的使用 

首先,无论是逍遥模拟器,还是真机,使用adb之前,都需要先启用“开发者选项或者模式”,且将"usb调试"打开(真机一般还需要安装驱动)。

常用命令:

adb kill-server

adb start-server

adb connect ip:port

adb devices

查看我的文章如何查看多开的逍遥模拟器的adb连接端口号_逍遥模拟器端口-CSDN博客

下面是我连接逍遥模拟器的命令: 

现在用usb连接真机后,用adb看一下

(注意:对于我的VIVO,在有些电脑上,需要先安装弹出框的“互传”的应用,也就是手机的驱动)

然后,直接adb devices就能看到真机信息了。

然后打开模拟器,再执行adb devices,两个设备就都显示出来了。

多个设备的话,需要使用adb -s 设备名 具体指令

举例:
(1)将电脑上的文件推送到模拟器中

adb -s 127.0.0.1:21523 push d:/moniqi.txt /storage/emulated/0/Download

运行完毕后,模拟器的相应路径下就有内容了

(2)将电脑上的文件推送到真机中 

adb -s a9bd35f0 push d:/zhenji.txt /storage/emulated/0/Download

运行完毕后,真机的路径中也有了(注意:务必写对真机上的路径,可以在真机上安装Root Explorer查看相应文件夹的路径)。

(3)将真机上的文件传送到电脑上来

 adb -s a9bd35f0 pull /storage/emulated/0/Download/aed26e77.0 d:/vivo

  

运行命令后,电脑上就有了相应内容。

 

(4)用电脑操作真机安装和卸载指定的APK

首先将APK下载到电脑上, 如d:/xiaohongshu.apk

运行命令

adb -s a9bd35f0 install d:/xiaohongshu.apk

注意:需要在真机上点击操作“继续安装”等步骤。

卸载app

(a)比如我要卸载刚刚安装的小红书

adb -s a9bd35f0 uninstall 小红书的包名

但是我不知道小红书的包名怎么办呢?

使用命令:

adb -s a9bd35f0 shell pm list packages

此命令会列出所有的包

太多了,找不到怎么办?使用带有搜索功能的命令。

adb -s a9bd35f0 shell pm list packages -e xhs

 

然后卸载 

adb -s a9bd35f0 uninstall com.xingin.xhs

你就发现,真机上的小红书APP就卸载成功了(图标都没有了)。 

(5)查看真机的CPU构架

adb -s a9bd35f0 shell getprop ro.product.cpu.abi

我的真机是arm64-v8a的,也就是64位的ARM。(32位的ARM样式位armeabi-v7a)。

顺便看下逍遥模拟器的CPU构架。

可以看到,逍遥模拟器的是x86_64的。 

(6)如果想要在电脑上进入真机的操作系统中,执行adb shell即可

电脑命令行状态

真机内部命令行状态

模拟器内部命令行状态

在内部使用exit;退回到电脑端命令行。

这里注意哦,真机的命令是带有$,而模拟器的命令是#,区别:

(1)$:打头的表示这不是在root用户(管理员用户)下执行的命令(因为我的真机没有root)
(2)#:打头的和前者相反,即root用户下(因为模拟器开启了root权限)

那么,着重研究下VMOS的命令行操作(因为我的真机中的VMOS已经root了)。

VMOS只支持网络 abd连接。(所以需要真机连接WIFI,而不是仅仅USB连接电脑)。

确保真机和电脑在同一个WIFI下,然后进行如下操作。

进入VMOS,底部菜单栏的“设置”(非桌面上的设置)-高玩设置-网络ADB(可以在电脑上通过adb connect 172.26.144.5:5667远程),拨到开启状态。

adb connect 172.26.144.5:5667

adb devices

在VMOS已经root的情况下,运行

adb -s 172.26.144.5:5667 shell

su

当输入su的时候,即表示要从普通用户转到超级用户($--->#),这时,真机VMOS中会弹出提示:

会发现手机VMOS中的超级用户中,多了一个Shell。

如果想从su变为普通用户(#---->$),在超级用户下使用exit即可 

查看一下VMOS的CPU构架,发现是arm64-v8a的。 

 

分别执行电脑向VMOS传文件,VMOS向电脑传文件,VMOS中安装APP。

a.电脑向VMOS传文件

adb -s 172.26.144.5:5667 push d:/vmos.txt /storage/emulated/0/Download

b.VMOS向电脑传文件

adb -s 172.26.144.5:5667 pull /storage/emulated/0/Download/charles-proxy-ssl-proxying-certificatevmos.pem d:/vivo

c.VMOS中安装和卸载APP,均测试成功。

adb -s 172.26.144.5:5667 install d:/xiaohongshu.apk

adb -s 172.26.144.5:5667 uninstall com.xingin.xhs 

另外,还有其他一些常用命令,如下:

最后测试一个VMOS的截屏并传送到电脑上,

adb -s 172.26.144.5:5667 shell screencap -p /storage/emulated/0/Download/aa.png

adb -s 172.26.144.5:5667 pull /storage/emulated/0/Download/aa.png d:/vivo

最后再次提醒:

以上所有的adb操作,都首先使用adb将电脑和手机相连接,在adb devices中看到设备后(在连接的情况下)才能操作。

(1)逍遥模拟器不需要usb,不需要WIFI

(2)真机需要usb

(3)真机VMOS需要WIFI 


http://www.kler.cn/a/304946.html

相关文章:

  • Java面向对象编程进阶之包装类
  • 【含开题报告+文档+PPT+源码】基于Spring Boot智能综合交通出行管理平台的设计与实现
  • 一种基于深度学习的反无人机无人值守系统及方法
  • power bi中的related函数解析
  • 关于sass在Vue3中编写bem框架报错以及警告问题记录
  • git status 命令卡顿的排查
  • 打造智能数据分析平台:基于 Flask 的数据处理与模型精度验证系统
  • 使用 Docker 进入容器并运行命令的详细指南
  • GANs-生成对抗网络
  • intellij idea创建java项目
  • MinGW探源:名称背后的故事、发音指南与历史沿革
  • (179)时序收敛--->(29)时序收敛二九
  • linux -L4.linux 暂停和启动进程
  • VUE工程中axios基本使用
  • SharePoint 创建本地 Web 部件 workbench 报错解决
  • quartus pin 分配(三)
  • Kubernetes (k8s)v1.27.1版本安装步骤
  • Jupyter Notebook | 安装 rise 插件后显示幻灯片失败
  • 【C#生态园】完整解读C#音频处理库:功能、安装配置和使用场景一网打尽
  • JavaScript 基础 - 第16天_AJAX入门
  • 什么是设计模式,要掌握那些知识
  • 若依笔记(六):前后端token鉴权体系
  • JUnit 5 详解
  • Redisson实现分布式锁
  • conda根据配置文件自动切换环境-----模仿 rvm 的 .ruby-version机制
  • 新能源汽车安全问题如何解决?细看“保护罩”连接器的守护使命