当前位置:  开发笔记 > IOS > 正文

中断后等待应用程序空闲

如何解决《中断后等待应用程序空闲》经验,为你挑选了1个好方法。

我有一个ViewController,它将在init上请求访问位置服务

if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusNotDetermined)
{
    [_locationManager requestWhenInUseAuthorization];
}

这会触发"允许应用在您使用应用时访问您的位置?" - 提醒.

[self addUIInterruptionMonitorWithDescription:handler:]用来对此做出反应.我遇到以下问题:在解除请求对话框后,ui-test不会继续.该警报被驳回,但Xcode中等待应用程序成为空闲,但它看起来像应用程序空闲的:

t =    67.35s             Wait for app to idle

测试失败,因为应用程序卡在这里.如果我点击模拟器,Xcode记录.

t =    72.27s         Synthesize event

并继续测试.

有没有理由,为什么Xcode试图等待应用程序?解决方法似乎是告诉Xcode UI已更改或事件发生.有没有办法触发这个?



1> Joe Masilott..:

在显示警报后,您必须与界面进行交互.这是Xcode 7.2的一个已知错误.只需点击应用程序就可以正常工作,但这是必需的.

addUIInterruptionMonitorWithDescription("Location Dialog") { (alert) -> Bool in
    alert.buttons["Allow"].tap()
    return true
}

app.buttons["Find Games Nearby?"].tap()
app.tap() // need to interact with the app for the handler to fire
XCTAssert(app.staticTexts["Authorized"].exists)

有关更多信息,请参阅我的博文.

推荐阅读
手机用户2402851335
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有