From 54fb79dc984e2cfa7ab10569b6f5d9ba5c2cd512 Mon Sep 17 00:00:00 2001 From: Koitharu Date: Fri, 12 Jan 2024 18:18:04 +0200 Subject: [PATCH] Fix crash on start app update download --- .../org/koitharu/kotatsu/settings/about/AppUpdateDialog.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/src/main/kotlin/org/koitharu/kotatsu/settings/about/AppUpdateDialog.kt b/app/src/main/kotlin/org/koitharu/kotatsu/settings/about/AppUpdateDialog.kt index cc0587718..74bcff08a 100644 --- a/app/src/main/kotlin/org/koitharu/kotatsu/settings/about/AppUpdateDialog.kt +++ b/app/src/main/kotlin/org/koitharu/kotatsu/settings/about/AppUpdateDialog.kt @@ -16,6 +16,7 @@ import io.noties.markwon.Markwon import org.koitharu.kotatsu.R import org.koitharu.kotatsu.core.github.AppVersion import org.koitharu.kotatsu.core.util.FileSize +import org.koitharu.kotatsu.core.util.ext.getDisplayMessage import com.google.android.material.R as materialR class AppUpdateDialog(private val activity: AppCompatActivity) { @@ -68,7 +69,7 @@ class AppUpdateDialog(private val activity: AppCompatActivity) { } } - private fun downloadUpdateImpl() { + private fun downloadUpdateImpl() = runCatching { val version = latestVersion val url = version.apkUrl.toUri() val dm = activity.getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager @@ -78,7 +79,10 @@ class AppUpdateDialog(private val activity: AppCompatActivity) { .setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED) .setMimeType("application/vnd.android.package-archive") dm.enqueue(request) + }.onSuccess { Toast.makeText(activity, R.string.download_started, Toast.LENGTH_SHORT).show() + }.onFailure { e -> + Toast.makeText(activity, e.getDisplayMessage(activity.resources), Toast.LENGTH_SHORT).show() } private fun openInBrowser() {