This commit is contained in:
tateisu 2022-06-15 11:24:36 +09:00
parent 09e619b6ad
commit 5e4ed90980
2 changed files with 8 additions and 5 deletions

View File

@ -24,8 +24,8 @@ android {
targetSdkVersion target_sdk_version targetSdkVersion target_sdk_version
minSdkVersion min_sdk_version minSdkVersion min_sdk_version
versionCode 490 versionCode 491
versionName "4.9.0" versionName "4.9.1"
applicationId "jp.juggler.subwaytooter" applicationId "jp.juggler.subwaytooter"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true vectorDrawables.useSupportLibrary = true

View File

@ -3,7 +3,10 @@ package jp.juggler.subwaytooter.notification
import android.app.NotificationManager import android.app.NotificationManager
import android.content.Context import android.content.Context
import android.net.Uri import android.net.Uri
import androidx.work.* import androidx.work.WorkInfo
import androidx.work.WorkManager
import androidx.work.WorkQuery
import androidx.work.await
import com.google.firebase.messaging.FirebaseMessaging import com.google.firebase.messaging.FirebaseMessaging
import jp.juggler.subwaytooter.App1 import jp.juggler.subwaytooter.App1
import jp.juggler.subwaytooter.api.TootApiClient import jp.juggler.subwaytooter.api.TootApiClient
@ -138,7 +141,7 @@ suspend fun cancelAllWorkAndJoin(context: Context) {
val workManager = WorkManager.getInstance(context) val workManager = WorkManager.getInstance(context)
repeat(3) { repeat(3) {
while (true) { while (true) {
workManager.pruneWork() workManager.pruneWork().await()
val workQuery = WorkQuery.Builder.fromStates( val workQuery = WorkQuery.Builder.fromStates(
listOf( listOf(
WorkInfo.State.ENQUEUED, WorkInfo.State.ENQUEUED,
@ -152,7 +155,7 @@ suspend fun cancelAllWorkAndJoin(context: Context) {
val list = workManager.getWorkInfos(workQuery).await() val list = workManager.getWorkInfos(workQuery).await()
if (list.isEmpty()) break if (list.isEmpty()) break
list.forEach { list.forEach {
workManager.cancelWorkById(it.id) workManager.cancelWorkById(it.id).await()
} }
delay(333L) delay(333L)
} }