【发布时间】:2016-10-19 21:29:38
【问题描述】:
我正在尝试分析Android 应用程序的内存使用情况。我这样做是使用
adb shell dumpsys meminfo <package name>
我的应用只有一个Activity,我可能会重复以下步骤十几次:
- 打开应用;
- 使用返回按钮退出
在这样做了十几次之后,dumpsys 显示我的 Activities 的大约 1-2 个实例仍在内存中。在我点击adb dumpsys 几次之后,Activity 计数下降到零。这是正常的吗?如果是泄漏,我不希望 Activity 计数降至零。这是否意味着GC 缓慢地索取Activity 对象的内存?
【问题讨论】:
-
尝试使用 LeakCanary github.com/square/leakcanary 分析您的应用程序的内存使用情况。您将能够更轻松地查明问题。
-
@EricBachhuber 谢谢。我确实使用了泄漏金丝雀并摆脱了泄漏。我现在只剩下误报了,Leak Canary 认为活动已经泄露,后来说“GC 很懒惰”。所以我认为泄漏金丝雀明智我没有泄漏。
标签: android android-activity memory-leaks garbage-collection activity-lifecycle