From a4859ba2eead7d8be2a0343e26914fddfcb3929f Mon Sep 17 00:00:00 2001
From: NekoInverter <42698724+NekoInverter@users.noreply.github.com>
Date: Tue, 1 Sep 2020 21:42:23 +0800
Subject: [PATCH] Prevent crash if no browser installed
---
app/src/main/java/com/hippo/ehviewer/UrlOpener.java | 8 +++++++-
app/src/main/res/values/strings.xml | 2 ++
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/app/src/main/java/com/hippo/ehviewer/UrlOpener.java b/app/src/main/java/com/hippo/ehviewer/UrlOpener.java
index 79589ca1d..ff64acdd6 100644
--- a/app/src/main/java/com/hippo/ehviewer/UrlOpener.java
+++ b/app/src/main/java/com/hippo/ehviewer/UrlOpener.java
@@ -16,10 +16,12 @@
package com.hippo.ehviewer;
+import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.text.TextUtils;
+import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.browser.customtabs.CustomTabsIntent;
@@ -59,6 +61,10 @@ public final class UrlOpener {
CustomTabsIntent.Builder customTabsIntent = new CustomTabsIntent.Builder();
customTabsIntent.setShowTitle(true);
customTabsIntent.setToolbarColor(AttrResources.getAttrColor(context, R.attr.colorPrimary));
- customTabsIntent.build().launchUrl(context, uri);
+ try {
+ customTabsIntent.build().launchUrl(context, uri);
+ } catch (ActivityNotFoundException e) {
+ Toast.makeText(context, R.string.no_browser_installed, Toast.LENGTH_LONG).show();
+ }
}
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index fd83f01e3..5602fa8a2 100755
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -784,4 +784,6 @@
Filter
All
Start all (reversed)
+
+ Just install a browser please.