一、介绍
AndroidDebug Bridge 我们一般简称为adb,它是一个非常强大的命令行工具,通过adb工具,你能够与你的android设备进行通信。使用adb命令是可以操控手机的,比如点击、滑动、输入等。在操控手机之前要先连接上手机,下面先来看下adb如何连接手机。
二、下载adb工具
官网下载地址:https://developer.android.com/studio/releases/platform-tools
这个地址也可以下载: https://www.appinn.com/download-adb-or-fastboot-without-android-studio/
三、连接手机
连接手机分为两种方式:1、有线连接;2、无线连接(要内网环境)
有线连接:
(1) 数据线连接
(2)把开发者选项和USB调试打开
(3)如果有模拟点击之类的选项也一定要打开,否则adb操控无效
(4)如果是连接成功 输入adb devices 会显示你的设备。
无线连接(要求是内网环境,必须先有线连接)
(1)使用adb tcpip 5555命令重启手机上的服务(端口可自定义)
(2)adb connect 192.168.0.5:5555连接手机,您的内网ip+刚才的端口号
(3)再使用 adb devices 会多一个设备,就是成功了,这时候拔掉数据线,操控第二个设备都可以。
四、命令操控手机
输入 0-9其中一个数字(android手机地址就是adb devices显示的设备名称)
adb -sshell input keyevent 7-16
1
返回桌面
adb -s shell input keyevent 3
1
返回键
adb -s shell input keyevent 4
1
点击事件(这里的400 400 是点击X坐标400,Y坐标也是400的位置)
adb -sshell input tap 400 400
1
滑动(可以模拟上下左右滑动)
adb -sshell input swipe
如向下滑动: adb -sshell input swipe 100 500 100 450
1
2
输入文本
adb -s shell input text "hello" #输入hello
1
五、手机控制手机
上面说的是PC控制手机,现在说手机直接控制手机;可以写个android软件执行命令即可;需要注意的是:
操控自身app不需要root权限,一旦进入另一个app需要root权限的
命令有所改变,不需要 adb到shell这一串了,因为android系统已经进入了shell了
如模拟点击
input tap 400 400
1
2
如果是进入其他app,需要执行命令的代码(手机需要root)
public void execShellCmd(String cmd) {
try {
// 申请获取root权限,这一步很重要,不然会没有作用
Process process = Runtime.getRuntime().exec("su");
// 获取输出流
OutputStream outputStream = process.getOutputStream();
DataOutputStream dataOutputStream = new DataOutputStream(
outputStream);
dataOutputStream.writeBytes(cmd);
dataOutputStream.flush();
dataOutputStream.close();
outputStream.close();
} catch (Throwable t) {
t.printStackTrace();
}
}
零基础入门
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
同时每个成长路线对应的板块都有配套的视频提供:
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
视频配套资料&国内外网安书籍、文档&工具
当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
来源地址:https://blog.csdn.net/Javachichi/article/details/130491839