From ce4f7418ea7ef8128cc7215b00e4efe0ec67608c Mon Sep 17 00:00:00 2001 From: johan12345 Date: Wed, 21 Jan 2026 21:24:40 +0100 Subject: [PATCH] don't crash when no sharing app is found --- app/src/main/java/net/vonforst/evmap/MapsActivity.kt | 12 ++++++++++-- .../java/net/vonforst/evmap/fragment/MapFragment.kt | 2 +- app/src/main/res/values-de/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/net/vonforst/evmap/MapsActivity.kt b/app/src/main/java/net/vonforst/evmap/MapsActivity.kt index 427f46b1..88129e87 100644 --- a/app/src/main/java/net/vonforst/evmap/MapsActivity.kt +++ b/app/src/main/java/net/vonforst/evmap/MapsActivity.kt @@ -342,12 +342,20 @@ class MapsActivity : AppCompatActivity(), } } - fun shareUrl(url: String) { + fun shareUrl(url: String, rootView: View) { val intent = Intent(Intent.ACTION_SEND).apply { type = "text/plain" putExtra(Intent.EXTRA_TEXT, url) } - startActivity(intent) + try { + startActivity(intent) + } catch (e: ActivityNotFoundException) { + Snackbar.make( + rootView, + R.string.no_share_app_found, + Snackbar.LENGTH_SHORT + ).show() + } } override fun onPreferenceStartFragment( diff --git a/app/src/main/java/net/vonforst/evmap/fragment/MapFragment.kt b/app/src/main/java/net/vonforst/evmap/fragment/MapFragment.kt index 0e18d07b..79ffed8b 100644 --- a/app/src/main/java/net/vonforst/evmap/fragment/MapFragment.kt +++ b/app/src/main/java/net/vonforst/evmap/fragment/MapFragment.kt @@ -513,7 +513,7 @@ class MapFragment : Fragment(), OnMapReadyCallback, MenuProvider { R.id.menu_share -> { val charger = vm.charger.value?.data if (charger != null && charger.url != null) { - (activity as? MapsActivity)?.shareUrl(charger.url) + (activity as? MapsActivity)?.shareUrl(charger.url, binding.root) } true } diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 95d958c2..9d2cce61 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -6,6 +6,7 @@ Bitte installiere eine Navigations-App Bitte installiere einen Webbrowser Bitte installiere eine E-Mail-App + Keine App zum Teilen gefunden Adresse Betreiber Verbund diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 536f19f0..c6702b56 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -6,6 +6,7 @@ Install a navigation app first Install a web browser first Install an email app first + Could not find an app to share with Address Operator Network