diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 69bc560..e4d1415 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -13,8 +13,8 @@ android { applicationId = "ru.kalinamall.seaca" minSdk = 26 targetSdk = 35 - versionCode = 10 - versionName = "0.4.6" + versionCode = 11 + versionName = "0.4.7" } buildTypes { diff --git a/app/src/main/java/ru/kalinamall/seaca/push/SeacaMessagingService.kt b/app/src/main/java/ru/kalinamall/seaca/push/SeacaMessagingService.kt index 0611268..6a9af76 100644 --- a/app/src/main/java/ru/kalinamall/seaca/push/SeacaMessagingService.kt +++ b/app/src/main/java/ru/kalinamall/seaca/push/SeacaMessagingService.kt @@ -6,6 +6,7 @@ import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.SupervisorJob import kotlinx.coroutines.launch +import kotlinx.coroutines.runBlocking import ru.kalinamall.seaca.data.NotificationMode import ru.kalinamall.seaca.data.SacRepository @@ -14,19 +15,18 @@ class SeacaMessagingService : FirebaseMessagingService() { private val repo by lazy { SacRepository(applicationContext) } override fun onMessageReceived(message: RemoteMessage) { - scope.launch { - when (repo.session.getNotificationMode()) { - NotificationMode.OFF -> return@launch - NotificationMode.PUSH_SILENT -> show(message, silent = true) - NotificationMode.PUSH_SOUND -> show(message, silent = false) - } + val mode = runBlocking { repo.session.getNotificationMode() } + when (mode) { + NotificationMode.OFF -> return + NotificationMode.PUSH_SILENT -> show(message, silent = true) + NotificationMode.PUSH_SOUND -> show(message, silent = false) } } private fun show(message: RemoteMessage, silent: Boolean) { val data = message.data - val title = message.notification?.title ?: data["title"] ?: "SAC" - val body = message.notification?.body ?: data["body"] ?: "" + val title = data["title"] ?: message.notification?.title ?: "SAC" + val body = data["body"] ?: message.notification?.body ?: "" NotificationHelper.show( context = this, title = title,