美文网首页
解决Xcode14"Application circumvent

解决Xcode14"Application circumvent

作者: 流年划过颜夕 | 来源:发表于2022-10-08 15:24 被阅读0次

    升级到Xcode14后,App莫名其妙一运行就闪退,断点也分析捕捉不到对应的地方,日志一直显示"Application circumvented Objective-C runtime dealloc initiation for <%s> object",看起来像是apple底层代码迭代后导致的问题。

    后面花了很多时间排查,定位到了是老项目中引入了IQKeyboardManager ,一直没更新导致的,但根本原因是iOS16 苹果不允许在系统控件分类(Categroy)中重写 + (void)initialize方法,而该库的老版本UIView分类里违背了:

    image.png

    解决方法:更新IQKeyboardManager到最新版本

    举一反三,根本解决方法:
    不要在系统控件分类(Categroy)中重写 + (void)initialize方法,如果时间紧可以暂时用+(void)load替换+ (void)initialize。

    相关文章

      网友评论

          本文标题:解决Xcode14"Application circumvent

          本文链接:https://www.haomeiwen.com/subject/znmwortx.html