From 1a7b6d7828aa99180d5e9d6e0a7ec17ac51f16ed Mon Sep 17 00:00:00 2001 From: cyBerta Date: Thu, 8 Feb 2018 13:21:46 +0100 Subject: #8830 fix onBoot behavior after ui changes --- app/src/main/java/se/leap/bitmaskclient/eip/EIP.java | 18 +++++++++++------- .../java/se/leap/bitmaskclient/eip/VoidVpnService.java | 4 ++-- 2 files changed, 13 insertions(+), 9 deletions(-) (limited to 'app/src/main/java/se/leap/bitmaskclient/eip') diff --git a/app/src/main/java/se/leap/bitmaskclient/eip/EIP.java b/app/src/main/java/se/leap/bitmaskclient/eip/EIP.java index eca5b881..5b7c6e69 100644 --- a/app/src/main/java/se/leap/bitmaskclient/eip/EIP.java +++ b/app/src/main/java/se/leap/bitmaskclient/eip/EIP.java @@ -33,11 +33,12 @@ import se.leap.bitmaskclient.OnBootReceiver; import static se.leap.bitmaskclient.Constants.EIP_ACTION_CHECK_CERT_VALIDITY; import static se.leap.bitmaskclient.Constants.EIP_ACTION_IS_RUNNING; import static se.leap.bitmaskclient.Constants.EIP_ACTION_START; -import static se.leap.bitmaskclient.Constants.EIP_ACTION_START_ALWAYS_ON_EIP; +import static se.leap.bitmaskclient.Constants.EIP_ACTION_START_ALWAYS_ON_VPN; import static se.leap.bitmaskclient.Constants.EIP_ACTION_STOP; import static se.leap.bitmaskclient.Constants.EIP_ACTION_UPDATE; import static se.leap.bitmaskclient.Constants.EIP_RECEIVER; import static se.leap.bitmaskclient.Constants.EIP_REQUEST; +import static se.leap.bitmaskclient.Constants.EIP_RESTART_ON_BOOT; import static se.leap.bitmaskclient.Constants.PROVIDER_KEY; import static se.leap.bitmaskclient.Constants.PROVIDER_VPN_CERTIFICATE; import static se.leap.bitmaskclient.Constants.SHARED_PREFERENCES; @@ -90,8 +91,8 @@ public final class EIP extends IntentService { case EIP_ACTION_START: startEIP(); break; - case EIP_ACTION_START_ALWAYS_ON_EIP: - startAlwaysOnEIP(); + case EIP_ACTION_START_ALWAYS_ON_VPN: + startEIPAlwaysOnVpn(); break; case EIP_ACTION_STOP: stopEIP(); @@ -114,6 +115,9 @@ public final class EIP extends IntentService { * It also sets up early routes. */ private void startEIP() { + if (!preferences.getBoolean(EIP_RESTART_ON_BOOT, false)){ + preferences.edit().putBoolean(EIP_RESTART_ON_BOOT, true).commit(); + } if (gatewaysManager.isEmpty()) updateEIPService(); if (!EipStatus.getInstance().isBlockingVpnEstablished()) { @@ -132,8 +136,8 @@ public final class EIP extends IntentService { * Tries to start the last used vpn profile when the OS was rebooted and always-on-VPN is enabled. * The {@link OnBootReceiver} will care if there is no profile. */ - private void startAlwaysOnEIP() { - Log.d(TAG, "startAlwaysOnEIP vpn"); + private void startEIPAlwaysOnVpn() { + Log.d(TAG, "startEIPAlwaysOnVpn vpn"); if (gatewaysManager.isEmpty()) updateEIPService(); @@ -141,10 +145,10 @@ public final class EIP extends IntentService { gateway = gatewaysManager.select(); if (gateway != null && gateway.getProfile() != null) { - Log.d(TAG, "startAlwaysOnEIP eip launch avtive gateway vpn"); + Log.d(TAG, "startEIPAlwaysOnVpn eip launch avtive gateway vpn"); launchActiveGateway(); } else { - Log.d(TAG, "startAlwaysOnEIP no active profile available!"); + Log.d(TAG, "startEIPAlwaysOnVpn no active profile available!"); } } diff --git a/app/src/main/java/se/leap/bitmaskclient/eip/VoidVpnService.java b/app/src/main/java/se/leap/bitmaskclient/eip/VoidVpnService.java index 6d49d83d..76d5fb8e 100644 --- a/app/src/main/java/se/leap/bitmaskclient/eip/VoidVpnService.java +++ b/app/src/main/java/se/leap/bitmaskclient/eip/VoidVpnService.java @@ -33,7 +33,7 @@ import de.blinkt.openvpn.core.VpnStatus; import se.leap.bitmaskclient.R; import se.leap.bitmaskclient.VpnNotificationManager; -import static se.leap.bitmaskclient.Constants.EIP_ACTION_START_ALWAYS_ON_EIP; +import static se.leap.bitmaskclient.Constants.EIP_ACTION_START_ALWAYS_ON_VPN; import static se.leap.bitmaskclient.Constants.EIP_ACTION_START_BLOCKING_VPN; import static se.leap.bitmaskclient.Constants.EIP_ACTION_STOP_BLOCKING_VPN; import static se.leap.bitmaskclient.Constants.EIP_IS_ALWAYS_ON; @@ -150,7 +150,7 @@ public class VoidVpnService extends VpnService implements Observer, VpnNotificat private void requestVpnWithLastSelectedProfile() { Intent startEIP = new Intent(getApplicationContext(), EIP.class); - startEIP.setAction(EIP_ACTION_START_ALWAYS_ON_EIP); + startEIP.setAction(EIP_ACTION_START_ALWAYS_ON_VPN); getApplicationContext().startService(startEIP); } -- cgit v1.2.3