func print(_ object: Any) {
#if DEBUG
Swift.print(object)
#endif
}
我让此函数重载了默认的打印功能,以便仅在DEBUG版本上进行打印,但是,在RELEASE版本上,它只是关闭了应用程序,我无法确定原因。
有人有主意吗?
编辑:阅读日志,我发现调用此代码时,Crashlytics捕获以下内容作为崩溃的原因:
[Crashlytics:Crash] Warning: NSUncaughtExceptionHandler is 'mp_handleUncaughtException' in '/Users/daredevil/Library/Developer/CoreSimulator/Devices/2FB9948E-77D9-4F76-9928-15ED2ED18E4A/data/Containers/Bundle/Application/39AB3114-EB6F-4520-B8FF-90908C5B9654/App.app/Frameworks/Mixpanel.framework/Mixpanel'
每当我删除全局替代打印功能时,都不会发生此崩溃。
编辑2:忽略先前的编辑。Mixpanel与该问题无关。我将其完全删除,但仍然崩溃。
我不知道您是否找出导致崩溃的原因,但可能与您使用的打印签名有关。
我使用类似的方法从发行版本中删除打印语句,但是我使用的打印签名是:
// Only show print statements while in DEBUG
func print(_ item: @autoclosure () -> Any, separator: String = " ", terminator: String = "\n") {
#if DEBUG
Swift.print(item(), separator:separator, terminator: terminator)
#endif
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句