如何在使用Xamarin.UITest访问iOS上的照片所需的权限对话框中点击确定按钮?

Phu*_*hai 8 ios xamarin

我正在使用Xamarin.UITest在iOS应用程序上执行自动化.

问题是:在访问图库上传照片时,有一个权限对话框,我需要点击"确定"按钮将其关闭.

以下我试过的方法,但它们没有用:

  • 使用树命令不显示该对话框的层次结构,因此我无法找到要自动化的UI元素

  • 使用 iOSApp.InvokeUia("UIATarget.localTarget().frontMostApp().alert().buttons()[\"OK\"].tap()"); 显示的错误: UIATarget.localTarget().frontMostApp().alert().buttons()["OK"] could not be tapped because the element is not visible tap@[native code]

  • 使用app.TapCoordinate,它似乎能够工作,但必须知道正确的坐标取决于不同的屏幕和对话框出现时.

有没有解决这个问题的方法?谢谢.

the*_*ohn 5

权限的系统对话框超出了应用程序的范围,不会显示在tree您可以通过UITest执行的任何其他查询中.相反,这些通常由葫芦自动处理."自动"行为是接受出现的任何权限对话框.

您的对话框是否使用其他语言,其中"OK"可能以非英语显示?如果是这样,我们可能需要为该特定区域设置提交问题,以便可以实施.

此外,请确保您拥有最新的UITest版本.在这里查看iOS 10和InvokeUia的更改.


woo*_*oof 2

试试这个: target.frontMostApp().mainWindow().elements()[0].elements()[2].elements()[1].tap()