当我在模拟器中旋转设备时,我在控制台中收到以下消息:[App] if we're in the real pre-commit handler we can't actually add any new fences due to CA restriction
。
有很多有关如何禁止警告的信息,例如question。但是,这似乎只是在没有实际解决任何问题的情况下跨步解决问题。
该警告的确切含义是什么,我该如何解决?
最佳答案
“警告的确切含义是什么?”
不幸的是,我对CoreAnimation的内部了解不足,无法完全解释该消息的含义。 second answer尝试通过检查反汇编代码来解释它。
“如何解决?”
您可能无法使用来解决此可能的,因为这与您的应用程序无关,尽管使用“[App]”可能会提示该消息。 (从second answer到referenced question也是如此。)
我相信此消息开始出现在iOS 10中,并且(通常)在设备旋转期间发生。我无法解决该问题的证据是,如果您创建一个空白的“Single View App”项目,请启动该项目(模拟器或设备)并旋转屏幕,将显示该消息。
从iOS的 iOS 12 beta 4开始,旋转屏幕时将不再发出此消息。这并不是说它不会在其他时间发生,因为UIKit发出它的原因可能在其他情况下有其优点。如果可能,请在Xcode 10 beta 4中试用您的应用程序,以查看它是否仍显示消息。
同样值得一提的是,用OS_ACTIVITY_MODE
抑制消息是一个坏主意,因为该方法会抑制太多有值(value)的调试信息,例如堆栈跟踪。
关于ios - 我该如何在实际的预提交处理程序中修复 “[App] if we' re,由于CA的限制,我们实际上无法添加任何新的隔离区”?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51440970/