gpt4 book ai didi

在设备挂起之前,Android 设备 RAM 使用量会增加,但应用程序内存不会增加

转载 作者:太空狗 更新时间:2023-10-29 12:48:19 24 4
gpt4 key购买 nike

我有一个应用程序加载 Activity A(由 ListFragment 组成),从 A 加载 Activity B。如果我继续在这两个 Activity 之间切换,我会看到每次切换时设备 RAM 都会增加 10 MB。在三星设备上,我们可以使用任务管理器来“清除内存”,这基本上会清除 RAM,但即使我这样做,内存也不会被清除。即使我强制停止应用程序并再次清除内存,它也不会下来.. 最后在这两个 Activity 之间切换后,手机速度变慢并在 RAM 已满后挂起,我必须重新启动设备。有趣的是,当使用“dumpsys meminfo”检查时,应用程序的内存不会超过 14-15 mb。我的应用程序没有 OOM。这种行为在 samsung galaxy tab 2 4.0、galaxy grand、ace duos 上观察到。在 Nexus 7 或 Galaxy Nexus 等 Nexus 设备上未观察到它。为什么 RAM 不断增加,但应用程序内存却没有?这是因为任何 BITMAP 泄漏吗?我尝试使用 MAT,但我才刚刚开始使用它,所以可能需要一些时间来弄清楚如何识别泄漏。有什么猜测吗?

编辑我在启动这两个 Activity 时使用了 Intent.FLAG_ACTIVITY_REORDER_TO_FRONT 标志。

最佳答案

当你切换 Activity 时,你应该在 Intent 上设置标志:

Intent.FLAG_ACTIVITY_REORDER_TO_FRONT

那样的话,如果 Activity 已经在堆栈中,它将切换到它而不是开始一个新的 Activity。

关于在设备挂起之前,Android 设备 RAM 使用量会增加,但应用程序内存不会增加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15459648/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com