控制台在加载UIWebView时显示AutoLayout引擎警告并且有时会崩溃应用程序

时间:2016-07-04 14:37:22

标签: ios objective-c swift uiwebview autolayout

要点: 尝试在UIWebView控制台上加载URL / HTML字符串时显示警告,例如“此应用程序正在从主线程访问引擎后从后台线程修改自动布局引擎。这可能导致引擎损坏和奇怪的崩溃“。并在某个时候崩溃应用程序。

重现步骤:

  1. UIWebView上加载网址/ HTML字符串。
  2. 控制台将显示AutoLayout引擎警告。
  3. App崩溃了几次(Uncaught exception:只在主线程上运行!)。
  4. 预期结果: 应用程序在加载UIWebView时不应显示任何警告,并且不应因此警告而导致应用程序崩溃。

    实际结果: 此应用程序在从主线程访问引擎后从后台线程修改autolayout引擎。这可能导致引擎损坏和奇怪的崩溃。

        Stack:(
            0   CoreFoundation                      0x0000000188e35998 <redacted> + 148
            1   libobjc.A.dylib                     0x00000001884304bc objc_exception_throw + 56
            2   CoreFoundation                      0x0000000188e358c8 <redacted> + 0
            3   Foundation                          0x00000001899a3da0 <redacted> + 192
            4   Foundation                          0x00000001899a3b00 <redacted> + 76
            5   Foundation                          0x0000000189808548 <redacted> + 108
            6   Foundation                          0x00000001899a2788 <redacted> + 104
            7   UIKit                               0x000000018ebbc76c <redacted> + 1464
            8   QuartzCore                          0x000000018c0e0d6c <redacted> + 148
            9   QuartzCore                          0x000000018c0d5aac <redacted> + 292
            10  QuartzCore                          0x000000018c0d596c <redacted> + 32
            11  QuartzCore                          0x000000018c0554fc <redacted> + 252
            12  QuartzCore                          0x000000018c07c7c4 <redacted> + 512
            13 
    
     QuartzCor
    

    iOS版: iOS 10 beta 1

    Xcode版本: Xcode 8 beta

    此问题已在iOS 10 beta2中得到解决。

    谢谢!

1 个答案:

答案 0 :(得分:1)

此问题发生在iOS 10 beta1,我在Apple Bug报告中提交了一个示例项目问题。现在问题已在iOS 10 beta 2中得到解决。

谢谢!