我该如何解决“[App] 如果我们在真正的预提交处理程序中,由于 CA 限制我们实际上不能添加任何新的栅栏”?
Posted
技术标签:
【中文标题】我该如何解决“[App] 如果我们在真正的预提交处理程序中,由于 CA 限制我们实际上不能添加任何新的栅栏”?【英文标题】:How can I fix “[App] if we're in the real pre-commit handler we can't actually add any new fences due to CA restriction”? 【发布时间】:2018-07-20 10:54:47 【问题描述】:当我在模拟器中旋转设备时,我在控制台中收到以下消息:[App] if we're in the real pre-commit handler we can't actually add any new fences due to CA restriction
。
有很多关于如何抑制警告的信息,例如question。然而,这似乎只是在解决问题,而没有真正解决任何问题。
警告到底是什么意思,我该如何解决?
【问题讨论】:
【参考方案1】:“警告的具体含义是什么?”
不幸的是,我对 CoreAnimation 的内部了解不够,无法完全解释消息的含义。 second answer 试图通过检查反汇编代码来解释它。
“我该如何解决?”
这可能 您无法修复,因为这不是您的应用程序的问题,尽管消息可能暗示使用“[App]”。 (second answer 到 referenced question 也说了这么多。)
我相信此消息开始出现在 ios 10 中,并且(通常)发生在设备旋转期间。我无法修复的证据是,如果您创建一个空白的“Single View App”项目,启动它(模拟器或设备)并旋转屏幕,将发出消息。
从 iOS 12 beta 4 开始,旋转屏幕时不再发出此消息。这并不是说它不会在其他时候发生,因为 UIKit 发出它的原因可能在其他情况下有一些优点。如果可能,请在 Xcode 10 beta 4 中试用您的应用,看看它是否仍会打印消息。
这里也值得一提的是,使用OS_ACTIVITY_MODE
隐藏消息是一个坏主意,因为该方法会抑制太多有价值的调试信息,例如堆栈跟踪。
【讨论】:
以上是关于我该如何解决“[App] 如果我们在真正的预提交处理程序中,由于 CA 限制我们实际上不能添加任何新的栅栏”?的主要内容,如果未能解决你的问题,请参考以下文章
什么是 NumberFormatException,我该如何解决?