我的应用程序随机崩溃并出现此错误:
[ServicesDaemonManager] interruptionHandler is called.
-[FontServicesDaemonManager connection]_block_invoke
(didReceiveMemoryWarning在错误消息之前触发)
由于随机性,我使用了SwiftUI(UIHostingController)、@ObserverObjects、异步网络调用、转换到其他视图等。
大部分时间都运行正常,但有时我会遇到这个错误。然后内存不断增加,直到应用程序崩溃。
我试图修复所有可能的内存泄漏(解除分配所有图像,[弱自我],...)没有帮助。
我不确定FontServicesDaemonManager在做什么以及它以什么方式参与,但所有字体都使用系统字体:
.font(Font.system(size: 25 , weight: .regular))
有时,此错误也会出现在上述错误之后:
-[UIWindow endDisablingInterfaceAutorotationAnimated:] called on <UIWindow: 0x10aab11a0; frame = (0 0; 375 812); gestureRecognizers = <NSArray: 0x10acb2510>; layer = <UIWindowLayer: 0x10aacbee0>> without matching -beginDisablingInterfaceAutorotation. Ignoring.
有人遇到过类似的问题或者有办法解决这个问题吗?(Xcode 11. 6)
更新:此问题通常与自动布局约束有关。请检查所有相关视图的约束。
3条答案
按热度按时间xfb7svmp1#
希望你得到答案,我在这里描述我的场景:
我在Xcode 11.6上也遇到了同样的错误,问题是我在scheme上启用了zoombie对象,它正在创建[ServicesDaemonManager] interruptionHandler。所以请检查它。内存警告背后的原因是在邮件线程上加载高分辨率图像,这不好。在后台线程中添加下载图像对我来说很有效。
谢谢你拉特纳什瓦
3xiyfsfu2#
这个问题通常与约束有关,您的约束一定有一些不明确的地方,这就是为什么您会得到这个错误。我的一个集合视图也有同样的问题,因为约束没有为较小的屏幕正确设置。再次检查约束,您就可以开始了。
dl5txlt93#
我遇到的问题与Autolayout和一些约束有关,这些约束确实适用于特定视图的全屏。我更改了Autolayout约束,从那时起,我不再有与此问题有关的崩溃。