diff --git a/app/src/main/java/com/topjohnwu/magisk/core/Info.kt b/app/src/main/java/com/topjohnwu/magisk/core/Info.kt index 4c1fd6ac8..8e9816299 100644 --- a/app/src/main/java/com/topjohnwu/magisk/core/Info.kt +++ b/app/src/main/java/com/topjohnwu/magisk/core/Info.kt @@ -32,6 +32,7 @@ object Info { @JvmStatic val env by lazy { loadState() } @JvmField var isSAR = false @JvmField var isAB = false + @JvmField val isVirtualAB = getProperty("ro.virtual_ab.enabled", "false") == "true" @JvmStatic val isFDE get() = crypto == "block" @JvmField var ramdisk = false @JvmField var hasGMS = true diff --git a/app/src/main/java/com/topjohnwu/magisk/ui/install/InstallViewModel.kt b/app/src/main/java/com/topjohnwu/magisk/ui/install/InstallViewModel.kt index 42faaf998..8a830b37a 100644 --- a/app/src/main/java/com/topjohnwu/magisk/ui/install/InstallViewModel.kt +++ b/app/src/main/java/com/topjohnwu/magisk/ui/install/InstallViewModel.kt @@ -29,7 +29,7 @@ class InstallViewModel( val isRooted = Shell.rootAccess() val skipOptions = Info.isEmulator || (Info.ramdisk && !Info.isFDE && Info.isSAR) - val noSecondSlot = !isRooted || Info.isPixel || !Info.isAB || Info.isEmulator + val noSecondSlot = !isRooted || Info.isPixel || Info.isVirtualAB || !Info.isAB || Info.isEmulator @get:Bindable var step = if (skipOptions) 1 else 0