diff --git a/app/build.gradle b/app/build.gradle index 6df3f9065..4e632f977 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -8,8 +8,8 @@ android { applicationId "com.topjohnwu.magisk" minSdkVersion 21 targetSdkVersion 25 - versionCode 27 - versionName "4.3.0" + versionCode 28 + versionName "4.3.1" jackOptions { enabled true jackInProcess true diff --git a/app/src/main/java/com/topjohnwu/magisk/MagiskManager.java b/app/src/main/java/com/topjohnwu/magisk/MagiskManager.java index c1543b8b0..50de14303 100644 --- a/app/src/main/java/com/topjohnwu/magisk/MagiskManager.java +++ b/app/src/main/java/com/topjohnwu/magisk/MagiskManager.java @@ -64,6 +64,7 @@ public class MagiskManager extends Application { public boolean magiskHide; public boolean isDarkTheme; public boolean updateNotification; + public boolean busybox; public int suRequestTimeout; public int suLogTimeout = 14; public int suAccessState; @@ -104,7 +105,7 @@ public class MagiskManager extends Application { .putBoolean("dark_theme", isDarkTheme) .putBoolean("magiskhide", magiskHide) .putBoolean("notification", updateNotification) - .putBoolean("busybox", Utils.commandExists("busybox")) + .putBoolean("busybox", busybox) .putBoolean("hosts", new File("/magisk/.core/hosts").exists()) .putBoolean("disable", Utils.itemExist(MAGISK_DISABLE_FILE)) .putString("su_request_timeout", String.valueOf(suRequestTimeout)) @@ -150,6 +151,12 @@ public class MagiskManager extends Application { magiskVersion = Double.POSITIVE_INFINITY; } } + ret = Shell.sh("getprop persist.magisk.busybox"); + try { + busybox = Utils.isValidShellResponse(ret) && Integer.parseInt(ret.get(0)) != 0; + } catch (NumberFormatException e) { + busybox = false; + } ret = Shell.sh("getprop ro.magisk.disable"); try { disabled = Utils.isValidShellResponse(ret) && Integer.parseInt(ret.get(0)) != 0;