微信移动客户端开发团队官号,分享微信在Android、iOS、Mac、Winphone、Windows等平台的开发经验、前沿技术,以及一些鲜为人知的小故事。
今天看啥  ›  专栏  ›  微信客户端技术团队

Matrix ResourceCanary -- Activity 泄漏及Bitmap冗余检测

微信客户端技术团队  · 公众号  ·  · 2018-12-28 11:41
    

文章预览

背景 随着微信 Android 客户端的代码规模越来越庞大,依赖人工 Review 来确保代码没有 泄漏 或 冗余 问题,虽然还是最保险的办法,但代码增长的速度总是大于 Review 的速度,完全靠人力介入变得越来越吃力,且依赖线上反馈进行事后排查也非常被动,为此我们从最为常见的 Activity 泄漏和 Bitmap 对象冗余入手提出了研发 ResourceCanary 模块的计划。 作为 Matrix 的一个子模块,ResourceCanary 将把原本难以发现的 Activity 泄漏和重复创建的冗余 Bitmap 暴露出来,并提供引用链等信息帮助排查这些问题的根源,以提高微信客户端的代码质量。 设计目标 在引入任何自动分析工具之前,对于 Activity 泄漏,一般都是在自动化测试阶段监控内存占用,一旦超过预期,则发起一次 GC 后进行 Dump ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览