首页
›
移动端与Android应用开发
›
034-Android架构组件内存泄漏
›
《BroadcastReceiver注册泄漏诊断与修复》
VIP20
本课程属于:034-Android架构组件内存泄漏
移动端与Android应用开发 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
BroadcastReceiver注册泄漏诊断与修复
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
泄漏现象识别
内存抖动 · OOM · GC频繁
泄漏现象识别
内存抖动
02
注册链路快照
获取registerReceiver… · 上下文引用链 · 注册时机
注册链路快照
registerRece…
03
引用链分析
理解注册后Receiver与Cont… · Activity/Service的强…
引用链分析
Receiver
04
泄漏根因分类
未解绑 · 静态内部类隐式持有 · 匿名内部类
泄漏根因分类
未解绑
05
工具准备
Android Profiler · MAT · LeakCanary
工具准备
Android
06
Heap Dump采集
通过Android Studio或a…
Heap
Dump
07
Mat/Shallow Heap分析
找出BroadcastReceive…
Mat/Shallow
Heap
08
LeakCanary自动报告
集成配置 · 解读泄漏链 · 排除误报
LeakCanary
自动报告
09
dumpsys meminfo查看
分析已注册Receiver数量 · 进程内存类别
dumpsys
meminfo
10
日志排查点
Logcat过滤“Receiver · registerReceiver · unregister
日志排查点
Logcat
11
生命周期绑定判断
检查onStart/onResume… · onStop/onDestroy未解…
生命周期绑定判断
onStart/onRe…
12
Fragment与Activity差异
Fragment生命周期更复杂 · 易漏解绑
Fragment
Activity
13
Service中的注册陷阱
Service长时运行 · 回收时未解绑
Service
注册陷阱
14
匿名内部类泄漏
分析内部类隐式持有外部类引用 · 导致Activity无法释放
匿名内部类泄漏
分析内部类隐式持…
15
静态Helper类泄漏
静态方法中注册Receiver并传入…
Helper
静态
16
第三方库注册泄漏
如EventBus · RxBus等框架动态注册未及时注销
第三方库注册泄漏
EventBus
17
跨进程Receiver泄漏
跨进程注册未在进程退出时解绑
Receiver
跨进程
18
修复动作之生命周期解绑
在onDestroy/onDetac…
修复动作之生命周…
onDestroy/on…
19
修复动作之弱引用改造
将Context包装为WeakRef…
修复动作之弱引用…
Context
20
修复动作之移除匿名内部类
改为静态内部类或外部类
修复动作之移除匿…
改为静态内部类或…
21
修复动作之防重复注册
使用标志位避免同一Receiver多…
修复动作之防重复…
Receiver
22
复测方案
LeakCanary自动复测 · 连续操作后再退出检查是否泄漏
复测方案
LeakCanary
23
内存快照对比
修复前后两次Heap Dump中Re…
内存快照对比
Heap
24
压力测试
大量快速注册-解绑操作 · 观察内存曲线
压力测试
大量快速注册
25
自动化检测
整合CI流程添加lint规则或自定义…
自动化检测
CI
26
预防方案之代码规范
团队约定注册与解绑成对出现并使用@C…
预防方案之代码规…
团队约定注册
27
预防方案之IDE插件
寻找可自动检测未解绑Receiver…
IDE
预防方案之
28
预防方案之基类封装
在BaseActivity/Base…
预防方案之基类封…
BaseActivity…
29
事故复盘记录
泄漏根因 · 影响范围 · 修复commit
事故复盘记录
泄漏根因
30
常见误区和边界
系统广播无需手动解绑?动态注册未解绑…
常见误区
边界
所属VIP或分类
同VIP:Android-Profiler堆转储分析技巧
同VIP:CI流水线集成LeakCanary实践
同VIP:DataStore实例持有泄漏排查指南