泄漏的对象是CFArray,但检测到导致泄漏的行不包含CFArray对象

Leaked Object Is CFArray, But Line Detected That Causes The Leak Does Not Contain CFArray Object

我有 2 100% 在启动应用程序时发生泄漏。仪器声明的泄漏对象是 CFArray 对象。

截图如下:

当我单击一个泄漏对象并检查它的保留周期时。这是我看到的:

然后我单击左侧显示的导致泄漏的行以检查代码,然后出现:

我的问题是,仪器声明的这一行 [UIDevice currentDevice].systemVersion.floatValue 甚至没有 return 任何 CFArray 对象。所以我不明白这个 CFArray 是从哪里来的。

感谢@Codo。看起来我过于关注行 [UIDevice currentDevice].systemVersion.floatValue 并且没有意识到真正导致泄漏的是 else 语句下未发布的 CFArray (supportedInterfaces)。刚刚做了一个 CFRelease(supportedInterfaces) 然后现在一切都很好。