我遇到的情况是,您有多个具有不同活动的活动,这些活动显示不同图像(通常由Glide加载)。
假设我们在这样的架构中标记.skipMemoryCache(true)
:
通过执行此操作(所有活动都已堆叠并且可以通过按“后退”按钮进行访问),我实现了以下目标:
像OnePlus 3(2016,3 years old)这样的手机不会崩溃,但是会导致高温和糟糕的用户体验(它落后于渲染)。这是OnePlus 3的配置文件:
像Samsung S4 Mini(2013年,6岁)之类的手机不会崩溃,但会停止加载图像。
摩托罗拉Moto G(2013年,已经使用6年,比Samsung S4 Mini稍好一点)之类的手机在使用Bitmaps进行两次或三次操作后会崩溃。
现在我的问题是,根据如何避免内存泄漏和OOM(内存不足)错误的指南,我找不到“不要堆叠大量资源的活动”之类的东西。这是我做错了吗,还是在onPause()
时活动应该处理一些特殊的事情?