如何在自动化 android webView 的情况下解决 "Cannot call non W3C standard command while in W3C mode"

How to resolve "Cannot call non W3C standard command while in W3C mode" in case of automating android webView

我正在做一个 android webView 自动化。从本机应用程序上下文更改为 webview 上下文后,出现以下错误。

org.openqa.selenium.UnsupportedCommandException: unknown command: Cannot call non W3C standard command while in W3C mode

与此相关的类似问题很多,但都与网络有关。我在 android webView 中找不到任何解决方案来解决这个问题。谁能告诉我如何解决这个问题。

环境:

  1. 手机版:5.1.1
  2. Appium 版本 1.15.1
  3. chromeDriver 版本:78.0.3904.70
  4. Chrome 版本:78.0.3904.62

我有类似的挑战。此外,在我的情况下,当我设置如下功能时会出现此日志消息:

caps.setCapability(MobileCapabilityType.FORCE_MJSONWP, true);

情况与移动JSON有线协议有关。

终于找到解决办法了。我刚刚使用了以下功能。

capabilities.setCapability("appium:chromeOptions", ImmutableMap.of("w3c", false));