【内存泄漏Bug】animation未释放

问题描述

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

问题分析

这个activity的特性是

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

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

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

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

问题解决

  1. 优化stop的实现为:

    /**

    * 停止播放

    */

    public synchronized void stop() {

    mShouldRun = false;

    mHandler.removeCallbacksAndMessages(null);

    }

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

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

相关推荐
爱写代码的派大星10 小时前
bug 就像隐藏在暗处的小怪兽
bug
燕双嘤10 小时前
Bug:引入Feign后触发了2次、4次ContextRefreshedEvent
bug
向上的车轮15 小时前
软件世界中的超级bug有哪些?
bug
测试小小怪下士3 天前
Bug的严重等级和优先级别与分类
bug
测试小小怪下士3 天前
软件Bug和缺陷的区别是什么?
bug
Matrix705 天前
Spark_写ORALCE:ORA-01426 numeric overflow 问题解决
bug
明耀6 天前
WPF Gif图谱 如果隐藏的话会存在BUG
c#·bug·wpf
|Ringleader|7 天前
【Unity Bug 随记】unity version control 报 xx is not in a workspace.
unity·bug·版本管理·uvc
a1111111111ss7 天前
猫狗识别之BUG汇总
bug
晓同哇哇~8 天前
Wxml2Canvas小程序将dom转为图片,bug总结
bug·canva可画