Fix ANR when opening from notification/widget (#8683)

This commit is contained in:
Ivan Iskandar 2022-12-05 21:00:30 +07:00 committed by GitHub
parent 8945ef8880
commit c288e6b8fa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -73,7 +73,6 @@ import kotlinx.coroutines.flow.drop
import kotlinx.coroutines.flow.launchIn import kotlinx.coroutines.flow.launchIn
import kotlinx.coroutines.flow.onEach import kotlinx.coroutines.flow.onEach
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import kotlinx.coroutines.runBlocking
import logcat.LogPriority import logcat.LogPriority
import uy.kohesive.injekt.Injekt import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get import uy.kohesive.injekt.api.get
@ -325,11 +324,13 @@ class MainActivity : BaseActivity() {
} }
override fun onNewIntent(intent: Intent) { override fun onNewIntent(intent: Intent) {
val handle = runBlocking { handleIntentAction(intent) } lifecycleScope.launch {
val handle = handleIntentAction(intent)
if (!handle) { if (!handle) {
super.onNewIntent(intent) super.onNewIntent(intent)
} }
} }
}
private suspend fun handleIntentAction(intent: Intent): Boolean { private suspend fun handleIntentAction(intent: Intent): Boolean {
val notificationId = intent.getIntExtra("notificationId", -1) val notificationId = intent.getIntExtra("notificationId", -1)