从 apk 执行 adb shell input swipe 命令

execute adb shell input swipe command from apk

我正在尝试使用

从我的 Apk 执行滑动命令

process = Runtime.getRuntime().exec("adb shell input swipe 250 300 -800 300");

但在运行期间没有任何反应,也没有发生错误。

我是否必须在清单中添加任何内容才能使其正常工作?

您只能以rootshell[=执行/system/bin/input 21=] 用户;这在应用程序中不起作用。从应用程序 运行ning 时,命令不应以 "adb shell" 开头。

以 root 身份运行命令:

Process su = null; 
try { 
    su = Runtime.getRuntime().exec("su");
    su.getOutputStream().write("input swipe 250 300 -800 300\n".getBytes());
    su.getOutputStream().write("exit\n".getBytes());
    su.waitFor(); 
} catch (Exception e) {
    e.printStackTrace();
} finally { 
    if (su != null) { 
        su.destroy(); 
    } 
}

您还应该查看第三方库来处理 su 命令:https://android-arsenal.com/details/1/451

您需要在清单中添加 INJECT_EVENTS 权限:



uses-permission android:name="android.permission.INJECT_EVENTS"