问题详细描述:

为了使 appium 支持 Android 系统 7 及以上,automationName 使用了 UIAutomator2。但是发现,使用 androidDriver.pressKeyCode(AndroidKeyCode.ENTER) 方法时,页面没有回车搜索,没有达到预期模拟键盘中回车的效果,查看 server 日志也没有报错信息。如果将 automationName 改为 Appium 则正常。
百思不得其解,希望各位可以指点迷津。

以下是已尝试解决办法,但都未生效:

环境描述:

appium server : v1.7.2
<dependency>
    <groupId>io.appium</groupId>
    <artifactId>java-client</artifactId>
    <version>5.0.4</version>
</dependency>

使用 UIA2 过程中,在进行 input 操作时,不知道什么原因,焦点不在输入框上,导致 pressKeyCode() 方法无效。(怀疑是 UIA2 框架的小 bug)

可在调用pressKeyCode()方法时,先重新 click 一下 input 输入框,然后执行 pressKeyCode() 方法即可。
在 input 和 click 操作之后,不需要调用第三方输入法,继续使用 io.appium.android.ime/.UnicodeIME 即可。


↙↙↙阅读原文可查看相关链接,并与作者交流