android内存优化总结

本文讲述了在Android应用中遇到视频播放导致内存占用过高但未崩溃的问题,重点分析了fragment内存泄漏、全局变量依赖、资源管理以及使用工具如AndroidProfiler和LeakCanary进行内存泄漏检测的方法。
摘要由CSDN通过智能技术生成

最近遇到视频播放的时候,内存居高不下的问题。没有崩溃,没有anr,功能一切正常。唯独内存一直攀升。

小总结下:
1.fragment 在activity全局变量被依赖,虽然调用fragment.onDestory了,但无法真正回收。
2.fragment 内部类或者接口设置为null
3.播放器和textureView解绑,且设置为null或回收资源。
4.fragment在栈里的个数,使用一个或者每次创建。

工具使用:

1.Android profiler

1.打开profiler
在这里插入图片描述
2.操作app ,内存进度会一直变化。
在这里插入图片描述
多次点击force garbage collection ,使jvm 回收对象。
在这里插入图片描述
选中捕获堆转储,点击record

在这里插入图片描述
如果有内存泄漏,会在leaks 体现出来。

2.leakCanary

   debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.0'

leakCanary 相关简单很多,只需要app build.gradle 加入上面依赖即可。运行app,会在leakCanaryAPP主动展示leak 信息。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值