diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ServiceManager.kt b/app/src/main/java/com/vitorpamplona/amethyst/ServiceManager.kt index a33cc2594..f1d896a91 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ServiceManager.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ServiceManager.kt @@ -115,7 +115,11 @@ object ServiceManager { Client.disconnect() } - fun cleanUp() { + fun cleanObservers() { + LocalCache.cleanObservers() + } + + fun trimMemory() { LocalCache.cleanObservers() val accounts = LocalPreferences.allLocalAccountNPubs().mapNotNull { decodePublicKeyAsHexOrNull(it) }.toSet() diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ui/MainActivity.kt b/app/src/main/java/com/vitorpamplona/amethyst/ui/MainActivity.kt index bb82a3357..d86fd04b3 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ui/MainActivity.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ui/MainActivity.kt @@ -103,6 +103,7 @@ class MainActivity : AppCompatActivity() { } override fun onPause() { + ServiceManager.cleanObservers() // if (BuildConfig.DEBUG) { debugState(this) // } @@ -127,7 +128,7 @@ class MainActivity : AppCompatActivity() { super.onTrimMemory(level) println("Trim Memory $level") GlobalScope.launch(Dispatchers.Default) { - ServiceManager.cleanUp() + ServiceManager.trimMemory() } }