0

在使用多片段方法(MVC 设计模式)的单个活动之后,我可以看到应用程序在 android 分析器中消耗了大约 200 MB。我已经解决了应用程序中存在的大部分泄漏,但本机和图形内存正在消耗大部分内存,如附图中所述。在此处输入图像描述

我的主要活动包括 2 个片段,每个片段都有背景图像。一旦主要活动启动,内存消耗约为 95 MB(本机 ~60MB 和图形 ~30MB),但一旦我开始打开其他片段,例如设置屏幕(新片段),这些消耗第一次突然增加了大约 50 MB,并且从下一次连续启动此设置片段开始导致约 10 MB 的加息。

我已经从 android profiler 中获取了堆转储,其中 Bitmap(~40 MB),BitmapDrawable(~25Mb) 所消耗的大部分内存附加了 pic 2 在此处输入图像描述

我尝试了多种方法,例如:

  1. 通过执行一些缩放在代码中动态加载图像 - 影响图像分辨率
  2. 销毁片段后清除对象 - 没有改进
  3. 删除不必要的 gradle 库 - 没有改进
  4. 解决应用程序中存在的泄漏 - 几乎没有改进(减少约 15 MB)

一旦我删除了活动顶部存在的所有打开的片段,为什么这些本机和图形内存没有得到释放并恢复到初始内存消耗(~95 MB)。

4

0 回答 0