2

使用在 iOS 11 上运行的 Xcode 9 运行我的 XCUITests 套件。

测试在 Xcode 8 (iOS10) 中运行完美,但在 Xcode 9 中我收到以下错误:

Main Thread Checker: UI API called on background thread [UIApplication statusBarOrientation]... 
... Queue name: com.Flurry.Analytics.Session

这可以通过注释掉所有 Flurry 代码来解决,但这显然并不理想。开发人员以前已经看到过这个问题: https ://github.com/flurry/flurry-ios-sdk/issues/91

但是,在这种情况下,dev build 可以正确编译,并且仅在运行 XCUITests 时才会出现此错误。

有人知道怎么修这个东西吗?

4

1 回答 1

4

为避免在测试中崩溃,您必须取消选中Main Thread Checker您的方案

Product > Scheme > Manage Schemes搜索您用于测试的方案,然后按Edit...左侧边栏中的按Test,然后转到并Diagnostics取消选中Main Thread Checker复选框

然后再试一次

这是一个临时解决方案,您应该尽量避免在后台线程上调用 UI API,因为应用程序可能会表现得很奇怪。但是由于您使用第三方库,您应该等到他们修复它。

于 2017-09-22T09:20:52.437 回答