diff --git a/Android-code/app/src/main/java/de/blinkt/openvpn/core/OpenVPNThread.java b/Android-code/app/src/main/java/de/blinkt/openvpn/core/OpenVPNThread.java index b836f5a..7dcd38c 100644 --- a/Android-code/app/src/main/java/de/blinkt/openvpn/core/OpenVPNThread.java +++ b/Android-code/app/src/main/java/de/blinkt/openvpn/core/OpenVPNThread.java @@ -186,6 +186,7 @@ else if ((flags & M_DEBUG) != 0) } catch (IOException e) { + e.printStackTrace(); VpnStatus.logException("Error reading from output of OpenVPN process", e); stopProcess(); } diff --git a/Android-code/app/src/main/java/de/blinkt/openvpn/core/VPNLaunchHelper.java b/Android-code/app/src/main/java/de/blinkt/openvpn/core/VPNLaunchHelper.java index aa14ea9..6ca17ca 100644 --- a/Android-code/app/src/main/java/de/blinkt/openvpn/core/VPNLaunchHelper.java +++ b/Android-code/app/src/main/java/de/blinkt/openvpn/core/VPNLaunchHelper.java @@ -30,6 +30,12 @@ public class VPNLaunchHelper { private static String writeMiniVPN(Context context) { + + String nativeAPI = NativeUtils.getNativeAPI(); + /* Q does not allow executing binaries written in temp directory anymore */ + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) + return new File(context.getApplicationInfo().nativeLibraryDir, "libovpnexec.so").getPath(); + String[] abis; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) abis = getSupportedABIsLollipop(); @@ -37,7 +43,7 @@ private static String writeMiniVPN(Context context) { //noinspection deprecation abis = new String[]{Build.CPU_ABI, Build.CPU_ABI2}; - String nativeAPI = NativeUtils.getNativeAPI(); + //String nativeAPI = NativeUtils.getNativeAPI(); if (!nativeAPI.equals(abis[0])) { VpnStatus.logWarning(R.string.abi_mismatch, Arrays.toString(abis), nativeAPI); abis = new String[] {nativeAPI}; diff --git a/Android-code/app/src/main/jniLibs/arm64-v8a/libovpnexec.so b/Android-code/app/src/main/jniLibs/arm64-v8a/libovpnexec.so new file mode 100644 index 0000000..d099c7b Binary files /dev/null and b/Android-code/app/src/main/jniLibs/arm64-v8a/libovpnexec.so differ diff --git a/Android-code/app/src/main/jniLibs/armeabi-v7a/libovpnexec.so b/Android-code/app/src/main/jniLibs/armeabi-v7a/libovpnexec.so new file mode 100644 index 0000000..77229f2 Binary files /dev/null and b/Android-code/app/src/main/jniLibs/armeabi-v7a/libovpnexec.so differ diff --git a/Android-code/app/src/main/jniLibs/x86/libovpnexec.so b/Android-code/app/src/main/jniLibs/x86/libovpnexec.so new file mode 100644 index 0000000..deea86d Binary files /dev/null and b/Android-code/app/src/main/jniLibs/x86/libovpnexec.so differ diff --git a/Android-code/app/src/main/jniLibs/x86_64/libovpnexec.so b/Android-code/app/src/main/jniLibs/x86_64/libovpnexec.so new file mode 100644 index 0000000..811a0e4 Binary files /dev/null and b/Android-code/app/src/main/jniLibs/x86_64/libovpnexec.so differ diff --git a/README.md b/README.md index b32a019..3e89bd1 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # Easy VPN Free ---- +## UPDATE +Fixed crash on **Android 10** ## Introduction Android application which lets you easily to connect to a number of free VPN server around the world with just a single tap!