一、Instruments定位不到代码
这事还比较奇怪, 感觉和之前打包后找崩溃的地方找不到一样,但是忘了当时怎么弄的了, 又一顿搜, 还好总是有好心人记录下来的。
参考:https://blog.csdn.net/binglan520/article/details/65632587
二、果然有泄漏
使员工Instruments查了一下项目, 果然有内存泄漏, 连续一串红叉叉竟然是AFN的。。。。
以前不记得AFN有泄漏过啊????
原来这个项目的网络请求缺少个单例。。。。。
参考https://blog.csdn.net/maajian/article/details/53941929
三、😱,main函数泄漏了
。。。。
内存分析先Analyze(Product->analyze),看看哪里可以, 试一下喽
339个可疑的小蓝方块。。。
果然是十几个人做过的项目, 不要问我们项目有多大多复杂,ipa包仅仅60M(不知道怎么这么大)
撸起袖子加油干!!!!!!响应习大大号召
1.cellforRow里return nil
总之有明确返回类型的都不要返回nil了
2.分享里的获取图片 UIImage *shareImage = [UIImage imageWithData:[NSData dataWithContentsOfURL:shareImageUrl]];
信息是: nil passed to a callee that requires a non-null argument 就是这个参数不可以使nil 必须得有值
参考:https://www.jianshu.com/p/3d030d367a34
- @property (copy, nonatomic) NSMutableString *topImageURL;
信息:property of mutable type 'NSmutableString‘ has 'copy' attribute: an immutab
把copy改为strong吧
4.UIImage *imageBG = [UIImage new];
imageBG = [UIImage imageNamed:@"bg_me"];
我也不知道这么写怎么了, 或者为什么这么写, 我肯定会感觉这么写麻烦
信息:Value stored to 'imageBG' during its initialization is never read
合并为一行多简单, 似不似
5.Unused variable 'xxx' 这样的, 也被显示出来了,那就去掉吧, 也去掉一个警告啊
- viewWillAppear:(BOOL)animated 方法里少调用了super方法
7.信息:Potential leak of an object stored into 'borderColorRef'
在第三方代码上出现的东西, 内存泄漏了
CGColorRelease(borderColorRef),
在ARC下,只有OC对象才能自动释放,但这里的ref类型的并不是一个对象类型。在调用ref类的内存计数+1了,但是在后面用完后却没release.
所以呢在ref类型的用完之后,要手动释放。
肯能会造成内存泄漏的, 造成内存泄漏的, 的类型都改完了
还有222个 Dead store 类型的 都是(。。。。is never read)。
好无奈。。。。
网友评论