diff --git a/app/src/main/java/com/topjohnwu/magisk/Const.kt b/app/src/main/java/com/topjohnwu/magisk/Const.kt index beb603d8a..d4f1d7081 100644 --- a/app/src/main/java/com/topjohnwu/magisk/Const.kt +++ b/app/src/main/java/com/topjohnwu/magisk/Const.kt @@ -23,7 +23,8 @@ object Const { val USER_ID = Process.myUid() / 100000 object Version { - const val MIN_SUPPORT = 18000 + const val MIN_VERSION = "v18.0" + const val MIN_VERCODE = 18000 const val CONNECT_MODE = 20100 } diff --git a/app/src/main/java/com/topjohnwu/magisk/Info.kt b/app/src/main/java/com/topjohnwu/magisk/Info.kt index 7b4820c25..66c601a91 100644 --- a/app/src/main/java/com/topjohnwu/magisk/Info.kt +++ b/app/src/main/java/com/topjohnwu/magisk/Info.kt @@ -43,12 +43,17 @@ object Info { }.getOrElse { Env() } class Env( - val magiskVersionCode: Int = -1, + code: Int = -1, val magiskVersionString: String = "", hide: Boolean = false, var connectionMode: Int = -1 ) { val magiskHide get() = Config.magiskHide + val magiskVersionCode = when (code) { + in Int.MIN_VALUE..Const.Version.MIN_VERCODE -> -1 + else -> code + } + val unsupported = code > 0 && code < Const.Version.MIN_VERCODE init { Config.magiskHide = hide diff --git a/app/src/main/java/com/topjohnwu/magisk/ui/MainActivity.kt b/app/src/main/java/com/topjohnwu/magisk/ui/MainActivity.kt index d629ad77c..60f26422e 100644 --- a/app/src/main/java/com/topjohnwu/magisk/ui/MainActivity.kt +++ b/app/src/main/java/com/topjohnwu/magisk/ui/MainActivity.kt @@ -2,11 +2,13 @@ package com.topjohnwu.magisk.ui import android.content.Intent import android.os.Bundle +import androidx.appcompat.app.AlertDialog import androidx.core.view.GravityCompat import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentTransaction import com.ncapdevi.fragnav.FragNavController import com.ncapdevi.fragnav.FragNavTransactionOptions +import com.topjohnwu.magisk.Const import com.topjohnwu.magisk.Const.Key.OPEN_SECTION import com.topjohnwu.magisk.Info import com.topjohnwu.magisk.R @@ -66,6 +68,15 @@ open class MainActivity : BaseActivity(), Na super.onCreate(savedInstanceState) + if (Info.env.unsupported && !viewModel.shownUnsupportedDialog) { + viewModel.shownUnsupportedDialog = true + AlertDialog.Builder(this) + .setTitle(R.string.unsupport_magisk_title) + .setMessage(getString(R.string.unsupport_magisk_msg, Const.Version.MIN_VERSION)) + .setPositiveButton(android.R.string.ok, null) + .show() + } + navigationController.apply { rootFragmentListener = this@MainActivity transactionListener = this@MainActivity diff --git a/app/src/main/java/com/topjohnwu/magisk/ui/MainViewModel.kt b/app/src/main/java/com/topjohnwu/magisk/ui/MainViewModel.kt index 35688183f..8bb5bf5a1 100644 --- a/app/src/main/java/com/topjohnwu/magisk/ui/MainViewModel.kt +++ b/app/src/main/java/com/topjohnwu/magisk/ui/MainViewModel.kt @@ -8,6 +8,8 @@ import com.topjohnwu.magisk.model.navigation.Navigation class MainViewModel : BaseViewModel() { + var shownUnsupportedDialog = false + fun navPressed() = Navigation.Main.OPEN_NAV.publish() fun navigationItemPressed(item: MenuItem): Boolean { diff --git a/app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt b/app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt index 845cb2efb..1a0ddf02b 100644 --- a/app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt +++ b/app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt @@ -3,8 +3,6 @@ package com.topjohnwu.magisk.ui import android.app.Activity import android.content.Context import android.os.Bundle -import android.text.TextUtils -import androidx.appcompat.app.AlertDialog import com.topjohnwu.magisk.* import com.topjohnwu.magisk.utils.Utils import com.topjohnwu.magisk.view.Notifications @@ -19,19 +17,7 @@ open class SplashActivity : Activity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - - Shell.getShell { - if (Info.env.magiskVersionCode > 0 && Info.env.magiskVersionCode < Const.Version.MIN_SUPPORT) { - AlertDialog.Builder(this) - .setTitle(R.string.unsupport_magisk_title) - .setMessage(R.string.unsupport_magisk_message) - .setNegativeButton(android.R.string.ok, null) - .setOnDismissListener { finish() } - .show() - } else { - initAndStart() - } - } + Shell.getShell { initAndStart() } } private fun initAndStart() { diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index a7be4c183..e53d65cd8 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -9,7 +9,6 @@ الإعدادات التثبيت إصدار Magisk غير مدعوم - لا يدعم هذا الإصدار من Magisk Manager إصدارا لـ Magisk vأقل من 18\n\n بإمكانك تحديث Magisk يدويا أو تثبيت إصدار أدنى. Magisk غير مثبت diff --git a/app/src/main/res/values-az/strings.xml b/app/src/main/res/values-az/strings.xml index d8ae0ac98..2dbf1e601 100644 --- a/app/src/main/res/values-az/strings.xml +++ b/app/src/main/res/values-az/strings.xml @@ -8,7 +8,6 @@ Tənzimləmələr Quraşdır Dəstəklənməyən Magisk Versiyası - Magisk Manager\'in bu versiyası Magisk\'in v18.0 versiyasndan aşağısını dəstəkləmir.\n\nMagisk\'i əllə yüksəldə, yaxud tətbiqi əvvəlki versiyalarına qaytara bilərsiniz. Magisk yüklənməyib. diff --git a/app/src/main/res/values-ca/strings.xml b/app/src/main/res/values-ca/strings.xml index 76edbd704..1de2eb50f 100644 --- a/app/src/main/res/values-ca/strings.xml +++ b/app/src/main/res/values-ca/strings.xml @@ -8,7 +8,6 @@ Configuració Instal·lar Versió de Magisk incompatible - Aquesta versió de Magisk Manager no suporta una versió inferior a la 18.0.\n\nPots actualitzar Magisk manualment o pots instalar una versió anterior de la app. Magisk no està instal·lat diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 7f9d1abfc..1c6ff351a 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -8,7 +8,6 @@ Nastavení Instalovat Nepodporovaná verze Magisk - Tato verze Magisk Managera nepodporuje verzi Magisk nižší než v18.0.\n\nMůžete buď ručně aktualizovat Magisk, nebo aplikaci downgradovat na starší verzi. Magisk není nainstalován. diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 4a954d4c2..017a84bdd 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -8,7 +8,6 @@ Einstellungen Installieren Nicht unterstützte Magisk Version - Diese Version von Magisk Manager unterstützt keine Magisk-Version kleiner als 18.0. \n\nSie können entweder Magisk manuell aktualisieren oder die App auf eine ältere Version herabstufen. Magisk ist nicht installiert diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 547e88569..2d3ac095b 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -8,7 +8,6 @@ Ajustes Instalar Versión de Magisk no soportada - Esta versión de Magisk Manager no admite una versión de Magisk inferior a la v18.0.\n\nPuede actualizar Magisk de forma manual o instalar una versión anterior de la aplicación. Magisk no está instalado diff --git a/app/src/main/res/values-et/strings.xml b/app/src/main/res/values-et/strings.xml index 4effbee81..6c4f3bcde 100644 --- a/app/src/main/res/values-et/strings.xml +++ b/app/src/main/res/values-et/strings.xml @@ -8,7 +8,6 @@ Seaded Installi Mittetoetatud Magisk\'i versioon - See Magisk Manager\'i versioon ei toeta Magisk\'ist vanemat versiooni kui v18.0.\n\nSa võid kas Magisk\'i käsitsi täiendada või alandad rakenduse vanemale versioonile. Magisk pole installitud diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 13708f5b5..505c1d223 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -8,7 +8,6 @@ Paramètres Installer Version de Magisk non prise en charge - Cette version de Magisk Manager ne prend pas en charge les versions de Magisk inférieures à v18.0.\n\nSi vous continuez, toutes les fonctionnalités de Magisk ne seront pas disponibles et vous ne pourrez que mettre à jour Magisk. Magisk n’est pas installé. diff --git a/app/src/main/res/values-hi/strings.xml b/app/src/main/res/values-hi/strings.xml index 759d5dd33..2b7c04211 100644 --- a/app/src/main/res/values-hi/strings.xml +++ b/app/src/main/res/values-hi/strings.xml @@ -8,7 +8,6 @@ सेटिंग्स स्थापित करें असमर्थित Magisk संस्करण - Magisk Manager का यह संस्करण Magisk के v18.0 संस्करण से कम का समर्थन नहीं करता है.\n\nआप या तो खुद से Magisk को अपग्रेड करें, या फिर एप्लीकेशन को पुराने संस्करण पे डाउनग्रेड करें . Magisk स्थापित नहीं है diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml index 361e0e09f..c53445891 100644 --- a/app/src/main/res/values-in/strings.xml +++ b/app/src/main/res/values-in/strings.xml @@ -7,7 +7,6 @@ Setelan Pasang Versi Magisk Tidak Didukung - Magisk Manager versi ini tidak mendukung versi Magisk di bawah v18.0.\n\nAnda dapat memperbarui Magisk secara manual, atau menurunkan aplikasi ke versi sebelumnya. Magisk tidak terpasang. diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 390f51311..473f2f714 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -8,7 +8,6 @@ Impostazioni Installa Versione di Magisk non supportata - Questa versione di Magisk Manager non supporta versioni di Magisk inferiori alla v18.0.\n\nPuoi aggiornare manualmente Magisk o tornare a una versione meno recente dell\'app. Magisk non è installato. diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 61faf6ea1..76966996f 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -8,7 +8,6 @@ 設定 インストール 対応していないMagiskバージョン - このバージョンのMagisk ManagerはMagisk v18.0以下には対応していません。\n\n手動でMagiskを更新するか、または古いバージョンのMagisk Managerをインストールしてください。 Magiskがインストールされていません diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index 395760601..f66ad2e3c 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -8,7 +8,6 @@ 설정 설치 지원되지 않는 Magisk 버전 - 이 버전의 Magisk Manager는 v18.0보다 낮은 버전의 Magisk를 지원하지 않습니다.\n\n직접 Magisk를 업데이트 하거나 이전 버전의 앱으로 다운그레이드하십시오.. Magisk가 설치되지 않음 diff --git a/app/src/main/res/values-mk/strings.xml b/app/src/main/res/values-mk/strings.xml index c891083a7..a846ac366 100644 --- a/app/src/main/res/values-mk/strings.xml +++ b/app/src/main/res/values-mk/strings.xml @@ -8,7 +8,6 @@ Поставки Инсталирај Неподдржана верзија на Magisk - Оваа верзија на Magisk Manager не ја поддржува верзијата на Magisk пониска од v18.0.\n\nМожно е да рачно да го надградите Magisk или да ја вратите апликацијата на постара верзија. Magisk не е инсталиран. diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 4804748e1..a5eaa480a 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -8,7 +8,6 @@ Ustawienia Instaluj Nieobsługiwana Wersja Magisk - Ta wersja Magisk Managera nie obsługuje wersji Magisk niższej niż v18.0.\n\nMożesz albo ręcznie zaktualizować Magisk lub obniżyć w aplikacji do starszej wersji. Magisk nie jest zainstalowany. diff --git a/app/src/main/res/values-ro/strings.xml b/app/src/main/res/values-ro/strings.xml index 6e6a8e423..2fba59981 100644 --- a/app/src/main/res/values-ro/strings.xml +++ b/app/src/main/res/values-ro/strings.xml @@ -8,7 +8,6 @@ Setări Instalează Versiune Magisk nesuportată - Această versiune de Magisk Manager nu suportă versiunea Magisk mai mică de v18.0.\n\nPoți fie să actualizezi manual Magisk, fie să treci la o versiune mai veche. Magisk nu este instalat. diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index be293523f..32b800414 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -8,7 +8,6 @@ Настройки Установка Неподдерживаемая версия Magisk - Эта версия Magisk Manager не поддерживает версию Magisk ниже v18.0.\n\nВы можете вручную обновить Magisk или понизить версию приложения до более старой. Magisk не установлен diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml index 3905a01ad..c39bf3cad 100644 --- a/app/src/main/res/values-sk/strings.xml +++ b/app/src/main/res/values-sk/strings.xml @@ -8,7 +8,6 @@ Nastavenia Inštalovať Nepodporovaná verzia Magisku - Táto verzia Magisk Managera podporuje Magisk od verzie v18.0.\n\nBuď upgradujte Magisk manuálne alebo nainštalujte staršiu verziu aplikácie. Magisk nie je nainštalovaný diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index bc574a0b8..1fed35e24 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -8,7 +8,6 @@ Ayarlar Yükle Desteklenmeyen Magisk Sürümü - Magisk Manager\'ın bu sürümü v18.0\'dan daha düşük Magisk versiyonlarını desteklememektedir.\n\nMagisk\'i manuel olarak yükseltebilir veya uygulamayı daha eski bir sürüme düşürebilirsiniz. Magisk yüklü değil diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index 4a3f86992..ae9573824 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -8,7 +8,6 @@ Налаштування Встановлення Версія Magisk не підтримується - Ця версія Magisk Manager не підтримує версію Magisk нижчу, ніж v18.0.\n\nВи можете або вручну оновити Magisk, або понизити програму до старішої версії. Magisk не встановлено. diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index e52a41ad6..beec9c798 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -8,7 +8,6 @@ 设置 安装 不支持的 Magisk 版本 - 此版本的 Magisk Manager 不支持低于 v18.0 的 Magisk。\n\n请手动升级 Magisk,或将应用降级到旧版本。 未安装 Magisk diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 7e092939d..d90e20a38 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -8,7 +8,6 @@ 設定 安裝 不支援此 Magisk 版本 - 此 Magisk Manager 版本最低支援 Magisk 18.0。\n\n請手動更新 Magisk,或安裝舊版 Magisk Manager。 未安裝 Magisk diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ca53b8223..1e5551fdc 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -8,8 +8,7 @@ Settings Install Unsupported Magisk Version - This version of Magisk Manager does not support Magisk version lower than v18.0.\n\nYou can either manually upgrade Magisk, or downgrade the app to an older version. - + This version of Magisk Manager does not support Magisk version lower than %1$s.\n\nThe app will behave as if no Magisk is installed, please upgrade Magisk as soon as possible. Magisk is not installed Checking for updates…