From e0ccac13c134d09aaa47c50163e43575848b7fc9 Mon Sep 17 00:00:00 2001 From: Pupil Date: Wed, 15 Jan 2020 10:58:53 +0900 Subject: [PATCH] Forgot to handle error :P --- app/build.gradle | 2 +- .../main/java/xyz/quaver/pupil/util/update.kt | 19 ++++++++++++++++--- app/src/main/res/values-ja/strings.xml | 2 +- app/src/main/res/values-ko/strings.xml | 4 ++-- app/src/main/res/values/strings.xml | 2 +- .../src/main/java/xyz/quaver/hitomi/reader.kt | 1 - 6 files changed, 21 insertions(+), 9 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 4b25e81b..db753c3c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -20,7 +20,7 @@ android { minSdkVersion 16 targetSdkVersion 29 versionCode 32 - versionName "4.3" + versionName "4.3-beta1" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" multiDexEnabled true vectorDrawables.useSupportLibrary = true diff --git a/app/src/main/java/xyz/quaver/pupil/util/update.kt b/app/src/main/java/xyz/quaver/pupil/util/update.kt index c133ab94..e0c7d43c 100644 --- a/app/src/main/java/xyz/quaver/pupil/util/update.kt +++ b/app/src/main/java/xyz/quaver/pupil/util/update.kt @@ -151,12 +151,25 @@ fun checkUpdate(context: AppCompatActivity, force: Boolean = false) { priority = NotificationCompat.PRIORITY_LOW } - CoroutineScope(Dispatchers.IO).launch { + CoroutineScope(Dispatchers.IO).launch io@{ val target = File(getDownloadDirectory(context), "Pupil.apk") - URL(url).download(target) { progress, fileSize -> - builder.setProgress(fileSize.toInt(), progress.toInt(), false) + try { + URL(url).download(target) { progress, fileSize -> + builder.setProgress(fileSize.toInt(), progress.toInt(), false) + notificationManager.notify(UPDATE_NOTIFICATION_ID, builder.build()) + } + } catch (e: Exception) { + builder.apply { + setContentText(context.getString(R.string.update_failed)) + setMessage(context.getString(R.string.update_failed_message)) + setSmallIcon(android.R.drawable.stat_sys_download_done) + } + + notificationManager.cancel(UPDATE_NOTIFICATION_ID) notificationManager.notify(UPDATE_NOTIFICATION_ID, builder.build()) + + return@io } val install = Intent(Intent.ACTION_VIEW).apply { diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 74bf6715..37dc05d8 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -84,7 +84,7 @@ 投稿日時順 人気順 アップデートに失敗しました - マニュアルインストールが必要です。APKファイルは + アップデート中エラーが発生しました 無視 ロックファイルが破損されています。Pupilを再再インストールしてください。 権限がないため自動アップデートを行えません。ホームページで直接ダウンロードしてください。 diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index bbaa7d97..f574795f 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -83,8 +83,8 @@ 정렬 인기순 시간순 - "업데이트 " - 수동 업데이트가 필요합니다. APK 파일은 다운로드 폴더에 있습니다. + "업데이트 에러 + 업데이트 중 에러가 발생했습니다 무시 잠금 파일이 손상되었습니다! 앱을 재설치 해 주시기 바랍니다. 권한이 부여되어 있지 않아 자동 업데이트를 진행할 수 없습니다. 홈페이지에서 직접 다운로드 받으시기 바랍니다. diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index d2852e5b..df9688b9 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -28,7 +28,7 @@ (Korean only) Update failed - Please install manually. APK file is in the Downloads folder. + Please install manually by visiting github release page :{ (or try again!) Cannot auto update because permission is denied. Please download manually from the webpage. Ignore diff --git a/libpupil/src/main/java/xyz/quaver/hitomi/reader.kt b/libpupil/src/main/java/xyz/quaver/hitomi/reader.kt index 4ed503a9..e3cfb193 100644 --- a/libpupil/src/main/java/xyz/quaver/hitomi/reader.kt +++ b/libpupil/src/main/java/xyz/quaver/hitomi/reader.kt @@ -20,7 +20,6 @@ import kotlinx.serialization.Serializable import org.jsoup.Jsoup fun getReferer(galleryID: Int) = "https://hitomi.la/reader/$galleryID.html" -fun webpUrlFromUrl(url: String) = url.replace("/galleries/", "/webp/") + ".webp" @Serializable data class GalleryInfo(