From 585257c995e2a76d693903edc30d65f9e5d48a98 Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Tue, 24 Mar 2020 14:04:13 -0600 Subject: TunnelManager: disallow remote apps for L I don't trust old Android versions to have gotten this right. Signed-off-by: Jason A. Donenfeld --- ui/src/main/java/com/wireguard/android/activity/SettingsActivity.kt | 4 ++++ ui/src/main/java/com/wireguard/android/model/TunnelManager.java | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'ui') diff --git a/ui/src/main/java/com/wireguard/android/activity/SettingsActivity.kt b/ui/src/main/java/com/wireguard/android/activity/SettingsActivity.kt index 10f74f55..8bd27d00 100644 --- a/ui/src/main/java/com/wireguard/android/activity/SettingsActivity.kt +++ b/ui/src/main/java/com/wireguard/android/activity/SettingsActivity.kt @@ -82,6 +82,10 @@ class SettingsActivity : ThemeChangeAwareActivity() { darkTheme?.parent?.removePreference(darkTheme) --preferenceScreen.initialExpandedChildrenCount } + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { + val remoteApps = preferenceManager.findPreference("allow_remote_control_intents") + remoteApps?.parent?.removePreference(remoteApps) + } val wgQuickOnlyPrefs = arrayOf( preferenceManager.findPreference("tools_installer"), preferenceManager.findPreference("restore_on_boot"), diff --git a/ui/src/main/java/com/wireguard/android/model/TunnelManager.java b/ui/src/main/java/com/wireguard/android/model/TunnelManager.java index 9fe9bfb3..547c9344 100644 --- a/ui/src/main/java/com/wireguard/android/model/TunnelManager.java +++ b/ui/src/main/java/com/wireguard/android/model/TunnelManager.java @@ -9,6 +9,7 @@ import android.annotation.SuppressLint; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; +import android.os.Build; import com.wireguard.android.Application; import com.wireguard.android.BR; @@ -278,7 +279,8 @@ public final class TunnelManager extends BaseObservable { return; } - if (!Application.getSharedPreferences().getBoolean("allow_remote_control_intents", false)) + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M || + !Application.getSharedPreferences().getBoolean("allow_remote_control_intents", false)) return; final State state; -- cgit v1.2.3