WCRetainCycleChecker
WCRetainCycleChecker 是一个检查 UIViewController 子类与其 retain 属性之间 retain-cycle 的工具。
它是如何工作的?
WCRetainCycleChecker 使用 method swizzling 来改变 UIViewController.viewDidDisappear
方法的实现。
安装
pod 'WCRetainCycleChecker', :configurations => ['Debug']
然后
cd YOUR_PODFILE_PATH && pod install
安装完成后,WCRetainCycleChecker 将在您的项目中生效。如果您的 UIViewController 子类有 retain-cycle,WCRetainCycleChecker 将会显示以下警告信息
Warning:<RetainedViewController: 0x7fa789f01800> still in memory after `-viewDidDisappear` (2s)
更多
您还可以在 WCRetainCycleChecker.retainCycleFound
回调中使用 FBRetainCycleDetector 获取更多信息。
还有一个名为 MLeaksFinder 的仓库,它的功能比我的更强大。