使用Instrument Leaks工具检测项目里的内存泄漏

iOS端 Hayya项目Leaks检测

发现首页有大量内存泄漏

内存泄漏

内存泄漏

内存泄漏

内存泄漏

内存泄漏
查看项目代码后,发现很多block里使用了self,造成循环应用。
通过修改循环引用
201774164337992

发现还是存在严重的内存泄漏,经过排查定位到OMTAppConfigHttpRequest.m中AFNetworking的错误写法。

‘- (void)post:(NSString *)urlString
parameters:(id)parameters
complete:(void (^)(id responseObjec))completed
failure:(void (^)(NSError *error)) failure
{

GCSocialNetworkClient *networkClient = [[GCSocialNetworkClient alloc] initWithBaseURL:[NSURL URLWithString:URL_GAMCO_SOCIAL_DOMAIN]];
networkClient.responseSerializer = [MBResponseSerializer serializer];
networkClient.requestSerializer = [MBRequestSerializer serializer];
[networkClient.requestSerializer setValue:@"" forHTTPHeaderField:@"User-Agent1"];


[self networkClient:networkClient postUrl:urlString parameters:parameters complete:^(id responseObjec) {
    completed(responseObjec);
} failure:^(NSError *error) {
    failure(error);
}];

}’

修改后

‘- (void)post:(NSString *)urlString
parameters:(id)parameters
complete:(void (^)(id responseObjec))completed
failure:(void (^)(NSError *error)) failure
{

[self networkClient:[HYAFNetWorkManager sharedManager] postUrl:urlString parameters:parameters complete:^(id responseObjec) {
    completed(responseObjec);
} failure:^(NSError *error) {
    failure(error);
}];

}’

最终首页内存检测如下

201774164337992

内存泄漏情况明显改善。

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

推荐阅读更多精彩内容