发布网友 发布时间:2022-05-15 23:26
共2个回答
热心网友 时间:2024-01-30 20:44
感谢大家的回复,刚刚我学着用MAT分析了一下,结果发现在surfaceview里有个thread没释放...所以整个surfaceview都没被释放,在thread设置了跳出变量后可以让它结束了,现在N次反复进入这个surfaceview都没再报溢出错误,不过可能测试的次数还不够多(原来点击5次必报错,现在超过20次,点来电去点麻木了没记住数到几了...).最后我想说的是,MAT很强大,大家在做开发的时候一定要善于使用MAT做溢出分析,现在我的心结终于打开一大半了,现在剩下的问题就是在DDMS观察反复进出这个surfaceview时还有一点点的data object数量增加(总数近3万个,每次增加几个,相对很少,所以暂时不会影响用户体验了,估计来回100次也没事,一般没人来回100次玩我这个小游戏吧,哈哈),so 这个问题我得等有空仔细研究一下.再次感谢大家的支持,谢谢!热心网友 时间:2024-01-30 20:45
你问题和我当前遇到的情况一模一样,反复进入再退出一个activity,多几次就内存溢出了,反正我当时花了一周时间才把它解决掉了,基本也就是上边大家说的的各种方法,最后还是终于是解决了,一句话,用完的图片记得回收,如果内存还是没变化,那你肯定是没有释放成功,一定是别的对象持有对图片对象的引用