Android 使用 Java 创建触摸事件并通过 app_process 执行
要使用 Java 创建触摸,需要使用 Android SDK 中的 TouchUtils 类和 Instrumentation 类。以下是一个简单的示例代码,可以在 Android 应用程序中创建一个触摸事件:
// 创建一个 MotionEvent 对象
MotionEvent event = MotionEvent.obtain(
SystemClock.uptimeMillis(),
SystemClock.uptimeMillis(),
MotionEvent.ACTION_DOWN,
x, // 触摸点的 x 坐标
y, // 触摸点的 y 坐标
0 // 触摸点的压力值
);
// 使用 Instrumentation 类发送触摸事件
Instrumentation instrumentation = new Instrumentation();
instrumentation.sendPointerSync(event);
要在 app_process 中执行此代码,可以将其包装在一个 Java 类中,并使用 javac 编译该类:
// Touch.java
import android.app.Instrumentation;
import android.os.SystemClock;
import android.view.MotionEvent;
public class Touch {
public static void main(String[] args) {
// 创建一个 MotionEvent 对象
MotionEvent event = MotionEvent.obtain(
SystemClock.uptimeMillis(),
SystemClock.uptimeMillis(),
MotionEvent.ACTION_DOWN,
Integer.parseInt(args[0]), // 触摸点的 x 坐标
Integer.parseInt(args[1]), // 触摸点的 y 坐标
0 // 触摸点的压力值
);
// 使用 Instrumentation 类发送触摸事件
Instrumentation instrumentation = new Instrumentation();
instrumentation.sendPointerSync(event);
}
}
然后,使用 javac 编译该类:
javac Touch.java
最后,可以使用 app_process 执行 Touch 类的 main 方法:
app_process /system/bin Touch x y
其中,x 和 y 是触摸点的坐标。注意,需要在 Android 设备上运行此命令,并确保设备已经 root。
原文地址: https://www.cveoy.top/t/topic/jOYB 著作权归作者所有。请勿转载和采集!