2

在 Appium wiki 页面 ( https://github.com/appium/appium/wiki/Automating-mobile-gestures ) 中提到了以下端点:

  1. session/:sessionId/触摸/点击
  2. 会话:/sessionId/touch/flick_precise
  3. 会话:/sessionId/触摸/滑动

但是,当使用 WebDriver (2.35) 的最新 Java 绑定的 TouchActions 时:

  1. 调用“singleTap”,调用/touch/click(即,不是“tap”)。至少在我的应用程序中,这会导致 Appium 服务器输出错误并丢弃客户端而不通知它,因此客户端只是挂起。
  2. 调用"flick",调用 /touch/flick (而不是 "flick_precis"),效果很好。

哪个端点是正确的?那些写在文档或java绑定中的?

谢谢!

4

2 回答 2

1

JSON-wire-protocol 目前正在调整以支持所有移动操作。现在这里是有关如何执行此操作的文档。

Appium 手势文档

于 2013-09-05T14:50:26.823 回答
0

可能是这个将指纹发送到 Android 模拟器的 C# 函数会对某人有所帮助。fingerprintId = "1" - 您需要在 Android 设备的 Settings 中配置的参数。

        string session_id = Program.Params.androidDriver.SessionId.ToString();

        WebRequest request = WebRequest.Create("http://127.0.0.1:4723/wd/hub/session/" + session_id + "/appium/device/finger_print");

        request.Method = "POST";            
        request.ContentType = "application/json;charset=UTF-8";


        var my_jsondata = new
        {
            fingerprintId = "1"
        };

        var postData = JsonConvert.SerializeObject(my_jsondata);

        byte[] byteArray = Encoding.UTF8.GetBytes(postData);
        request.ContentLength = byteArray.Length;
        Stream dataStream = request.GetRequestStream();
        dataStream.Write(byteArray, 0, byteArray.Length);

        dataStream.Close();
于 2019-03-25T13:22:57.073 回答