From 0f3a420d83ce7227767b75d047069315abf7c074 Mon Sep 17 00:00:00 2001 From: Matthias Urhahn <matthias.urhahn@sap.com> Date: Fri, 2 Oct 2020 13:55:34 +0200 Subject: [PATCH] Improve low storage error formatting (EXPOSUREAPP-2745) (#1292) * Try to use formatted error messages if available. * Try to use formatted error messages if available. * If there is no fallback appconfig yet, abort early to show a more accurate error (download error vs "no app config" error). * Revert "If there is no fallback appconfig yet, abort early to show a more accurate error (download error vs "no app config" error)." This reverts commit 10ff8f4f Co-authored-by: harambasicluka <64483219+harambasicluka@users.noreply.github.com> --- .../coronawarnapp/exception/reporting/ExceptionReporter.kt | 7 +++++-- .../main/java/de/rki/coronawarnapp/util/FormattedError.kt | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/exception/reporting/ExceptionReporter.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/exception/reporting/ExceptionReporter.kt index d18d4e2ce..a29ddabf3 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/exception/reporting/ExceptionReporter.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/exception/reporting/ExceptionReporter.kt @@ -9,6 +9,7 @@ import de.rki.coronawarnapp.exception.ExceptionCategory import de.rki.coronawarnapp.exception.reporting.ReportingConstants.STATUS_CODE_GOOGLE_API_FAIL import de.rki.coronawarnapp.exception.reporting.ReportingConstants.STATUS_CODE_GOOGLE_UPDATE_NEEDED import de.rki.coronawarnapp.exception.reporting.ReportingConstants.STATUS_CODE_REACHED_REQUEST_LIMIT +import de.rki.coronawarnapp.util.tryFormattedError import java.io.PrintWriter import java.io.StringWriter @@ -20,11 +21,13 @@ fun Throwable.report( prefix: String?, suffix: String? ) { + val context = CoronaWarnApplication.getAppContext() + val intent = Intent(ReportingConstants.ERROR_REPORT_LOCAL_BROADCAST_CHANNEL) intent.putExtra(ReportingConstants.ERROR_REPORT_CATEGORY_EXTRA, exceptionCategory.name) intent.putExtra(ReportingConstants.ERROR_REPORT_PREFIX_EXTRA, prefix) intent.putExtra(ReportingConstants.ERROR_REPORT_SUFFIX_EXTRA, suffix) - intent.putExtra(ReportingConstants.ERROR_REPORT_MESSAGE_EXTRA, this.message) + intent.putExtra(ReportingConstants.ERROR_REPORT_MESSAGE_EXTRA, this.tryFormattedError(context)) if (this is ReportedExceptionInterface) { intent.putExtra(ReportingConstants.ERROR_REPORT_CODE_EXTRA, this.code) @@ -62,7 +65,7 @@ fun Throwable.report( } intent.putExtra(ReportingConstants.ERROR_REPORT_STACK_EXTRA, stackExtra) - LocalBroadcastManager.getInstance(CoronaWarnApplication.getAppContext()).sendBroadcast(intent) + LocalBroadcastManager.getInstance(context).sendBroadcast(intent) } fun reportGeneric( diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/FormattedError.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/FormattedError.kt index cd100ebbc..0639465ce 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/FormattedError.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/FormattedError.kt @@ -8,5 +8,5 @@ interface FormattedError { fun Throwable.tryFormattedError(context: Context): String = when (this) { is FormattedError -> this.getFormattedError(context) - else -> localizedMessage ?: this.toString() + else -> (localizedMessage ?: this.message) ?: this.toString() } -- GitLab