繁体   English   中英

在多个设备上同时运行方法-Android

[英]Run Method On Multiple Devices at the Same Time - Android

我目前有一个应用程序,可以在主要活动上按一个按钮,它可以进行数据收集。 我需要在多个设备上同时执行此操作。 目前,我只是尝试通过定时按一下按钮(同时将手指按在每个设备上)来手动执行此操作。 显然,这实际上不适用于2个以上的设备。

我想知道是否可以通过PC在设备上同时运行该方法(在按下按钮时调用该方法)?

我已经看到很多答案将Appium用于这种实现,但是,对于我所需要的来说,这似乎有点过多。 没有办法通过命令行(adp)运行它吗? 甚至只是建立一台小型服务器,将设备连接到该方法所在的位置?

谢谢。

您可以使用adb通过命令行单击按钮,但需要具有x和y坐标。

adb shell input tap x y

我添加了代码,以在按下某个键时运行所需的方法。 在下面的示例代码中,我使用了F12。

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {

    // KEYCODE_F12 = 142
    if (keyCode == KeyEvent.KEYCODE_F12) {
        findViewById(R.id.button).performClick();
    }

    return super.onKeyDown(keyCode, event);
}

F12的密钥代码号是142。

adb devices用于获取连接的设备ID。 然后,我可以使用adb将按键事件输入到设备中:

start adb -s device_id1 shell input keyevent 142
start adb -s device_id2 shell input keyevent 142

“开始”命令用于尝试并并行运行adb命令,以减少设备的输入延迟。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM