diff options
author | Arne Schwabe <arne@rfc2549.org> | 2020-05-27 13:39:55 +0200 |
---|---|---|
committer | Arne Schwabe <arne@rfc2549.org> | 2020-05-27 17:01:23 +0200 |
commit | 00b10ed048cc1f6490e7ca3e0530dd4471ca5a40 (patch) | |
tree | 0ffe2af2125fc0a05b05d8e3f55ab40a950724a6 /main/src/main/java/de/blinkt/openvpn/core/OpenVPNService.java | |
parent | 45d8e94d3b8421018fa86a8ca1439210fedbd8de (diff) |
Implement internal webview for authenticating when OPEN_URL is used
Diffstat (limited to 'main/src/main/java/de/blinkt/openvpn/core/OpenVPNService.java')
-rw-r--r-- | main/src/main/java/de/blinkt/openvpn/core/OpenVPNService.java | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/main/src/main/java/de/blinkt/openvpn/core/OpenVPNService.java b/main/src/main/java/de/blinkt/openvpn/core/OpenVPNService.java index 51add1cd..eb88e0cc 100644 --- a/main/src/main/java/de/blinkt/openvpn/core/OpenVPNService.java +++ b/main/src/main/java/de/blinkt/openvpn/core/OpenVPNService.java @@ -31,14 +31,15 @@ import android.os.IBinder; import android.os.Message; import android.os.ParcelFileDescriptor; import android.os.RemoteException; -import androidx.annotation.NonNull; -import androidx.annotation.RequiresApi; import android.system.OsConstants; import android.text.TextUtils; import android.util.Base64; import android.util.Log; import android.widget.Toast; +import androidx.annotation.NonNull; +import androidx.annotation.RequiresApi; + import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; @@ -77,6 +78,7 @@ public class OpenVPNService extends VpnService implements StateListener, Callbac private static final String RESUME_VPN = "de.blinkt.openvpn.RESUME_VPN"; public static final String EXTRA_CHALLENGE_TXT = "de.blinkt.openvpn.core.CR_TEXT_CHALLENGE"; + public static final String EXTRA_CHALLENGE_OPENURL = "de.blinkt.openvpn.core.OPENURL_CHALLENGE"; private static final int PRIORITY_MIN = -2; private static final int PRIORITY_DEFAULT = 0; @@ -174,8 +176,6 @@ public class OpenVPNService extends VpnService implements StateListener, Callbac return res.getString(R.string.volume_gbyte, bytesUnit); } - - } /** @@ -700,6 +700,8 @@ public class OpenVPNService extends VpnService implements StateListener, Callbac return null; } + + @Override public IBinder asBinder() { return mBinder; @@ -1289,13 +1291,9 @@ public class OpenVPNService extends VpnService implements StateListener, Callbac nbuilder.setContentTitle(getString(reason)); nbuilder.setContentText(url); - - - intent = new Intent(Intent.ACTION_VIEW); + intent = VariantConfig.getOpenUrlIntent(this); intent.setData(Uri.parse(url)); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - - } else if (method.equals("CR_TEXT")) { String challenge = info.split(":", 2)[1]; reason = R.string.crtext_requested; |