From eec7f2517db5dba6a2dcbdb2027af4e0b639a660 Mon Sep 17 00:00:00 2001 From: Mygod Date: Thu, 11 Jun 2020 06:59:18 +0800 Subject: [PATCH] Target SDK 29 for more efficient netlink --- mobile/build.gradle.kts | 4 +++- .../main/java/be/mygod/vpnhotspot/net/monitor/IpMonitor.kt | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) 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()) ?: "")