记一次 iOS 开发APP卡住情况 proGC objc_retain 'CALayer position contains NaN: [nan nan]'

错误表现

APP卡住,cpu飙升至100%,暂停APP,无法看到卡住调用栈,能查到proGC、objc_retain等方法调用

p_4.png
p_2.png
p_3.png

错误原因

在iOS9+的系统中,做除法运算时,被除数为0,iOS8系统同样卡住,但是后台会收集到'CALayer position contains NaN: [nan nan]'错误日志

p_5.png

错误代码

屏幕快照 2019-08-14 下午2.25.20.png

错误代码如上图,判断为两个数组加和,被除数为其中一个数组,所以存在被除数为0的可能,是个很低级但因为没有错误日志很难定位到错误

总结

当出现上述被除数为0的情况时,iOS9+系统不会报错,只会卡住,友盟后台也不会出现错误日志,iOS8系统会卡住,友盟后台会报'CALayer position contains NaN: [nan nan]'错误日志,希望本文能对大家提供帮助

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。