UITest Tap 不适用于使用 iPhone X 的 iOS 12.4适用于 iPhone 7

问题描述

这可能与 iOS12.4(实际上也是 12.2)中的 SafeArea 问题有关吗? 我使用以下函数在 UITests 期间点击视图。

func tapAtLocation(_ element: XCUIElement) -> Self {
    let loc = element.coordinate(withnormalizedOffset: .init(dx: 0,dy: 0))
    loc.tap()
    return self
}

我尝试点击特定图像的位置。 所以我得到图像并触发点击

let myImage = App.images[myImageViewIdentifier].firstMatch
tapAtLocation(myImage)

它适用于新的 iOS 版本和 iPhone 7 iOS 12.4,但不适用于 iPhone X。 我需要它在 iPhone X 上工作 :)

你建议我做什么?也许你有一个很好的调试技巧来准确地查看它试图点击的位置?

解决方法

好的!经过一天的失败和重试后,一个简单的解决方案就成功了!

    <script>
        var domain = "meet.example.com";
        if(isModerator == true) {
           var options = {
                userInfo: {
                    moderator: true,},roomName: "123",width: "100%",height: "100%",parentNode: document.querySelector('#container'),}
        } else {
           var options = {
                userInfo: {
                    moderator: false,}
        }
           var api = new JitsiMeetExternalAPI(domain,options);
           api.on('readyToClose',() => {
             window.location.href = '{{ $meeting_end_url }}';
           });
    </script>

     //pusher
     channel.bind('meeting ended',function (meeting) {
           window.setTimeout(function() {
           window.location.href = '/'; <-- redirect path
        },5000);
    });

这适用于装有 iOS 12.4 和 13+ 的所有设备(iPhone X、7 和 11)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...