【问题标题】:Xcode 9, iOS 11, XCUITest failure: Main Thread Checker Flurry AnalyticsXcode 9、iOS 11、XCUITest 失败:主线程检查器 Flurry Analytics
【发布时间】:2018-03-03 18:31:32
【问题描述】:

使用在 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 时才会出现此错误。

有人知道如何解决这个问题吗?

【问题讨论】:

    标签: automation ios10 swift4 xcode9 xcuitest


    【解决方案1】:

    为了避免在测试中崩溃,你必须在你的 Scheme 中取消选中 Main Thread Checker

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

    然后再试一次

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

    【讨论】:

    • 感谢您的回复。前几天我试过了,但仍然遇到同样的错误。之后甚至重新启动了xcode,但仍然没有乐趣。
    • 我希望下周发布 Flurry 的 sdk 版本来解决这个问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-04
    • 1970-01-01
    • 1970-01-01
    • 2021-07-23
    • 2018-04-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多