【内存泄漏Bug】animation未释放

问题描述

一个页面做了动画特效,这个页面有可能跳转到其他页面,并长时间不返回,该页面此时已经不活跃了,该页面的对象为无用对象,存在内存泄漏风险

问题分析

这个activity的特性是

  1. 有可能跳转到其他页面

  2. 有可能从其他页面跳转回来

  3. 点击back按钮,并不会杀死当前页面

页面不再处于前台的时候,未将动画暂停,释放动画资源

问题解决

  1. 优化stop的实现为:

    /**

    * 停止播放

    */

    public synchronized void stop() {

    mShouldRun = false;

    mHandler.removeCallbacksAndMessages(null);

    }

  2. 在onPause、onResume做动画的停止、恢复处理,避免重复创建动画;

  3. 在onDestory做动画的销毁处理,避免无法gc

相关推荐
hello_2503 天前
bug排查思路大纲
bug
秃头小饼干3 天前
关于Bug排查日记的技术文章大纲
bug
烧冻鸡翅QAQ3 天前
测试中的Bug
bug·测试
云和数据.ChenGuang5 天前
java常见SSL bug解决方案
java·bug·ssl
cat_with_cat5 天前
测试:BUG篇
bug·测试
黑客飓风5 天前
Bug排查日记的技术
bug
Wiktok6 天前
[Wit]CnOCR模型训练全流程简化记录(包括排除BUG)
python·深度学习·bug
玄尺_0076 天前
bug:uniCloud报Business Failed, 参数有误retry invoke error
数据库·bug
程序猿阿伟6 天前
《云原生边缘与AI训练场景:2类高频隐蔽Bug的深度排查与架构修复》
人工智能·云原生·bug
夕阳UPdz6 天前
深入探索 Unity 错误排查过程:从“滚动条问题”到“鼠标悬浮异常”
bug