Don't use trimMemory(BACKGROUND) for lockscreen trimming.

Use a more lightweight trimCaches() call instead, which is much safer.

Bug: 275486055
Test: atest ResourceTrimmer
      perfetto test runs on cheetah
Change-Id: I32b524ff55d732c0f0879301cc0956ba21e50174
This commit is contained in:
Jernej Virag
2023-05-22 21:49:25 +02:00
parent 39169f8115
commit 5c841cbd21
2 changed files with 8 additions and 4 deletions

View File

@@ -139,7 +139,8 @@ constructor(
if (dozeDisabledAndScreenOff || dozeEnabledAndDozeAnimationCompleted) {
Trace.beginSection("ResourceTrimmer#trimMemory")
Log.d(LOG_TAG, "SysUI asleep, trimming memory.")
globalWindowManager.trimMemory(ComponentCallbacks2.TRIM_MEMORY_BACKGROUND)
globalWindowManager.trimMemory(ComponentCallbacks2.TRIM_MEMORY_UI_HIDDEN)
globalWindowManager.trimCaches(HardwareRenderer.CACHE_TRIM_ALL)
Trace.endSection()
}
}

View File

@@ -98,7 +98,8 @@ class ResourceTrimmerTest : SysuiTestCase() {
)
testScope.runCurrent()
verify(globalWindowManager, times(1))
.trimMemory(ComponentCallbacks2.TRIM_MEMORY_BACKGROUND)
.trimMemory(ComponentCallbacks2.TRIM_MEMORY_UI_HIDDEN)
verify(globalWindowManager, times(1)).trimCaches(HardwareRenderer.CACHE_TRIM_ALL)
}
@Test
@@ -115,7 +116,8 @@ class ResourceTrimmerTest : SysuiTestCase() {
)
testScope.runCurrent()
verify(globalWindowManager, times(1))
.trimMemory(ComponentCallbacks2.TRIM_MEMORY_BACKGROUND)
.trimMemory(ComponentCallbacks2.TRIM_MEMORY_UI_HIDDEN)
verify(globalWindowManager, times(1)).trimCaches(HardwareRenderer.CACHE_TRIM_ALL)
}
@Test
@@ -161,7 +163,8 @@ class ResourceTrimmerTest : SysuiTestCase() {
keyguardRepository.setDozeAmount(1f)
testScope.runCurrent()
verify(globalWindowManager, times(1))
.trimMemory(ComponentCallbacks2.TRIM_MEMORY_BACKGROUND)
.trimMemory(ComponentCallbacks2.TRIM_MEMORY_UI_HIDDEN)
verify(globalWindowManager, times(1)).trimCaches(HardwareRenderer.CACHE_TRIM_ALL)
}
}