逆向学习系列(三)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 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值