
zhangleiandClaude Sonnet 4.6
9c91839520
fix(base): 修复多处内存泄漏及生命周期安全问题
BaseVMBFragment:
- 修复 onDestroyView 中 mBinding == null(比较运算)为正确的 _mBinding = null(赋值),
引入 backing field 模式彻底释放 View 引用,防止 Fragment 回退栈内存泄漏
- 修复 onDestroy 中 EventBus.unregister 判断条件取反(!isRegistered → isRegistered),
确保 Fragment 销毁时正确注销,避免 EventBus 长期持有 Fragment 引用
BaseVMBActivity:
- 删除无效的 getResources() 重写(createConfigurationContext 返回值未使用),
字体防缩放逻辑已由 attachBaseContext 正确实现
MainActivity:
- 删除 onSaveInstanceState(Bundle()) 错误重写,
传入空 Bundle 导致 Fragment 状态无法保存,低内存恢复场景必现异常
EmergencyFragment:
- onDestroy 中补充主动停止并销毁 AMapLocationClient,
防止 Fragment 销毁后 GPS 定位服务持续运行
HomeFragment:
- homeNoticeStartRepeat 新增 Job 引用,每次启动前取消旧协程,
防止多次调用时多个轮询协程并发叠加导致接口重复请求
WatchItemFragment:
- newInstance 迁移至 companion object,符合 Android Fragment 工厂方法规范
- position 类型由 Int? 改为 Int,移除无用的 Fragment import
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-06 10:25:20 +08:00
..
2025-07-02 14:26:20 +08:00
2025-06-27 09:32:04 +08:00
2026-03-06 10:25:20 +08:00
2025-06-25 16:55:14 +08:00
2026-02-10 11:55:42 +08:00
2025-06-25 16:55:14 +08:00