From 5abc3a7e2073e793da952ca84791ed9e028c2a65 Mon Sep 17 00:00:00 2001 From: emanuele-f Date: Sun, 23 Mar 2025 12:41:13 +0100 Subject: [PATCH] Fix possible IllegalStateException on VPN start "IllegalStateException: Unavailable in lockdown mode" is happening on some devices. On most devices it just returnss a null intent --- .../com/emanuelef/remote_capture/CaptureHelper.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/emanuelef/remote_capture/CaptureHelper.java b/app/src/main/java/com/emanuelef/remote_capture/CaptureHelper.java index c59fde9a..4daae5e9 100644 --- a/app/src/main/java/com/emanuelef/remote_capture/CaptureHelper.java +++ b/app/src/main/java/com/emanuelef/remote_capture/CaptureHelper.java @@ -148,14 +148,22 @@ public class CaptureHelper { return; } - Intent vpnPrepareIntent = VpnService.prepare(mContext); + Intent vpnPrepareIntent = null; + try { + vpnPrepareIntent = VpnService.prepare(mContext); + } catch (RuntimeException e) { + e.printStackTrace(); + } + if(vpnPrepareIntent != null) { + final Intent prepareIntent = vpnPrepareIntent; + if (mLauncher != null) new AlertDialog.Builder(mContext) .setMessage(R.string.vpn_setup_msg) .setPositiveButton(R.string.ok, (dialog, whichButton) -> { try { - mLauncher.launch(vpnPrepareIntent); + mLauncher.launch(prepareIntent); } catch (ActivityNotFoundException e) { Utils.showToastLong(mContext, R.string.no_intent_handler_found); mListener.onCaptureStartResult(false);