diff --git a/mobile/build.gradle.kts b/mobile/build.gradle.kts index a49a22c3..bc772bac 100644 --- a/mobile/build.gradle.kts +++ b/mobile/build.gradle.kts @@ -10,6 +10,7 @@ plugins { android { val javaVersion = JavaVersion.VERSION_1_8 + val targetSdk = 29 compileOptions { isCoreLibraryDesugaringEnabled = true sourceCompatibility = javaVersion @@ -23,7 +24,7 @@ android { defaultConfig { applicationId = "be.mygod.vpnhotspot" minSdkVersion(21) - targetSdkVersion(30) + targetSdkVersion(targetSdk) resConfigs(listOf("it", "ru", "zh-rCN", "zh-rTW")) versionCode = 224 versionName = "2.9.1" @@ -32,6 +33,7 @@ android { "room.incremental" to "true", "room.schemaLocation" to "$projectDir/schemas")) buildConfigField("boolean", "DONATIONS", "true") + buildConfigField("int", "TARGET_SDK", targetSdk.toString()) } buildFeatures { dataBinding = true diff --git a/mobile/src/main/java/be/mygod/vpnhotspot/net/monitor/IpMonitor.kt b/mobile/src/main/java/be/mygod/vpnhotspot/net/monitor/IpMonitor.kt index 38f9fac6..28ea9977 100644 --- a/mobile/src/main/java/be/mygod/vpnhotspot/net/monitor/IpMonitor.kt +++ b/mobile/src/main/java/be/mygod/vpnhotspot/net/monitor/IpMonitor.kt @@ -5,6 +5,7 @@ import android.system.ErrnoException import android.system.OsConstants import androidx.core.content.edit import be.mygod.vpnhotspot.App.Companion.app +import be.mygod.vpnhotspot.BuildConfig import be.mygod.vpnhotspot.R import be.mygod.vpnhotspot.util.RootSession import be.mygod.vpnhotspot.widget.SmartSnackbar @@ -24,7 +25,8 @@ abstract class IpMonitor : Runnable { "Dump (was interrupted and may be inconsistent.|terminated)$)").toRegex() var currentMode: Mode get() { - val defaultMode = if (Build.VERSION.SDK_INT < 30) @Suppress("DEPRECATION") { + val isLegacy = Build.VERSION.SDK_INT < 30 || BuildConfig.TARGET_SDK < 30 + val defaultMode = if (isLegacy) @Suppress("DEPRECATION") { Mode.Poll } else Mode.MonitorRoot return Mode.valueOf(app.pref.getString(KEY, defaultMode.toString()) ?: "")