From 5454b72dbd12689f50801786d37c5d592183ed76 Mon Sep 17 00:00:00 2001 From: Martin Kankaanranta <55850510+norkator@users.noreply.github.com> Date: Thu, 29 Oct 2020 20:34:44 +0200 Subject: [PATCH] Patch some bugs --- app/build.gradle | 4 ++-- .../com/nitramite/apcupsdmonitor/UPS.java | 2 +- .../com/nitramite/apcupsdmonitor/Widget.java | 19 ++++++++++++------- 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 810e483..5746f4c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -9,7 +9,7 @@ android { targetSdkVersion 29 versionCode 29 - versionName "1.5.5" // Use Semver + versionName "1.5.6" // Use Semver testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { @@ -39,5 +39,5 @@ dependencies { implementation 'com.google.android.material:material:1.2.1' implementation 'joda-time:joda-time:2.10.5' // For the notifications - implementation 'com.google.firebase:firebase-messaging:20.3.0' + implementation 'com.google.firebase:firebase-messaging:21.0.0' } diff --git a/app/src/main/java/com/nitramite/apcupsdmonitor/UPS.java b/app/src/main/java/com/nitramite/apcupsdmonitor/UPS.java index 8d05eac..4d32347 100644 --- a/app/src/main/java/com/nitramite/apcupsdmonitor/UPS.java +++ b/app/src/main/java/com/nitramite/apcupsdmonitor/UPS.java @@ -331,7 +331,7 @@ else if (line.contains("Status of UPS")) { // Helper to clean results private String getCleanLine(final String line, final String containing) { String[] split = line.split(": "); // See : and space, important - return split[1]; //.substring(1, split[1].length()); // Does not get simpler than this + return split.length > 0 ? split[1] : ""; } diff --git a/app/src/main/java/com/nitramite/apcupsdmonitor/Widget.java b/app/src/main/java/com/nitramite/apcupsdmonitor/Widget.java index 8473e80..78c0776 100644 --- a/app/src/main/java/com/nitramite/apcupsdmonitor/Widget.java +++ b/app/src/main/java/com/nitramite/apcupsdmonitor/Widget.java @@ -129,13 +129,18 @@ private Bitmap createUpsViewBitmap(Context context, ArrayList upsArrayList) private static Bitmap getBitmapFromView(View view) { - view.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED); - Bitmap bitmap = Bitmap.createBitmap(view.getMeasuredWidth(), view.getMeasuredHeight(), - Bitmap.Config.ARGB_8888); - Canvas canvas = new Canvas(bitmap); - view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight()); - view.draw(canvas); - return bitmap; + try { + view.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED); + Bitmap bitmap = Bitmap.createBitmap(view.getMeasuredWidth(), view.getMeasuredHeight(), + Bitmap.Config.ARGB_8888); + Canvas canvas = new Canvas(bitmap); + view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight()); + view.draw(canvas); + return bitmap; + } catch (IllegalArgumentException e) { + Log.i(TAG, e.toString()); + return null; + } }