From 0ed82d15ff3ec41dc514058ba3a09a628c2fc685 Mon Sep 17 00:00:00 2001 From: johan12345 Date: Sun, 13 Nov 2022 14:14:08 +0100 Subject: [PATCH] Add support for opening openchargemap.org links in EVMap --- app/src/main/AndroidManifest.xml | 4 +++ .../java/net/vonforst/evmap/MapsActivity.kt | 32 +++++++++++++++++++ app/src/main/res/values-de/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + 4 files changed, 38 insertions(+) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index aef7e384..bf9a8056 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -252,6 +252,10 @@ android:host="www.goingelectric.de" android:pathPattern="/stromtankstellen/Ungarn/..*/..*/..*/" android:scheme="https" /> + diff --git a/app/src/main/java/net/vonforst/evmap/MapsActivity.kt b/app/src/main/java/net/vonforst/evmap/MapsActivity.kt index cd4d7b3f..de7bc594 100644 --- a/app/src/main/java/net/vonforst/evmap/MapsActivity.kt +++ b/app/src/main/java/net/vonforst/evmap/MapsActivity.kt @@ -8,6 +8,7 @@ import android.os.Build import android.os.Bundle import android.os.SystemClock import android.view.View +import android.widget.Toast import androidx.appcompat.app.AppCompatActivity import androidx.browser.customtabs.CustomTabColorSchemeParams import androidx.browser.customtabs.CustomTabsIntent @@ -131,6 +132,37 @@ class MapsActivity : AppCompatActivity(), } else if (intent?.scheme == "https" && intent?.data?.host == "www.goingelectric.de") { val id = intent.data?.pathSegments?.last()?.toLongOrNull() if (id != null) { + if (prefs.dataSource != "goingelectric") { + prefs.dataSource = "goingelectric" + Toast.makeText( + this, + getString( + R.string.data_source_switched_to, + getString(R.string.data_source_goingelectric) + ), + Toast.LENGTH_LONG + ).show() + } + deepLink = navController.createDeepLink() + .setGraph(R.navigation.nav_graph) + .setDestination(R.id.map) + .setArguments(MapFragmentArgs(chargerId = id).toBundle()) + .createPendingIntent() + } + } else if (intent?.scheme == "https" && intent?.data?.host == "openchargemap.org") { + val id = intent.data?.pathSegments?.last()?.toLongOrNull() + if (id != null) { + if (prefs.dataSource != "openchargemap") { + prefs.dataSource = "openchargemap" + Toast.makeText( + this, + getString( + R.string.data_source_switched_to, + getString(R.string.data_source_openchargemap) + ), + Toast.LENGTH_LONG + ).show() + } deepLink = navController.createDeepLink() .setGraph(R.navigation.nav_graph) .setDestination(R.id.map) diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 27f11368..9f8c28d3 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -283,4 +283,5 @@ für unterstützte Ladestationen\n(momentan nur Schnellader in Deutschland) (nur %s) DC-Anschlüsse + Datenquelle zu %s umgeschaltet \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 569da1e3..9203c9e2 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -282,4 +282,5 @@ for supported chargers\n(currently only DC in Germany) (%s only) DC plugs + Data source switched to %s