gpt4 book ai didi

java - 与 android 模拟器交互

转载 作者:行者123 更新时间:2023-12-01 22:24:46 25 4
gpt4 key购买 nike

我正在开发 Genymotion android 模拟器,我正在研究如何与其交互。我读到事件和Linux为每个设备公开了一个统一的输入事件接口(interface)作为/dev/input/eventX。

可以用android模拟器来完成吗?我的意思是是否可以使用java实现将鼠标事件发送到模拟器并注入(inject)到/dev/input/eventX,这样我们就可以使用java应用程序上的按钮与2048游戏进行交互,而不是触摸上下移动??

希望这是一个明确的问题:)

谢谢:)

最佳答案

与 Android 模拟器交互的方法有很多:

  1. 您可以重现“手动”应用于设备的手势,通过 ADB Shell,您可以使用 geteventsendevent 命令。这可能有点费力,但你可以阅读 this very clear post了解更多信息。
  2. 您还可以使用 adb shell input 命令,其中“man 输出”非常不言自明。它允许您注入(inject)定义的输入,例如触摸屏、文本输入等。
  3. 您还可以使用UI Automator 。从 Java 项目中模拟用户行为非常有用。您从手机内部运行。
  4. 然后,您还可以使用MonkeyRunner ,一个 Python API,允许您通过 ADB 从手机外部编写类似用户的行为脚本。如果您想从设备外部编写脚本,这是更好的方法。
  5. 如果您想在应用程序内部检测手势,您可以使用 Instrument类(class)。它允许您注入(inject)事件并需要 INJECT_EVENTS允许。请注意,如果应用程序不是系统应用程序,则无法在应用程序外部注入(inject)事件。要成为系统应用程序,您需要使用系统证书 as explained here 对您的应用程序进行签名。 。由于Genymotion和Android SDK模拟器使用AOSP默认证书,因此您将能够轻松获取它。

关于java - 与 android 模拟器交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29016064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com