mirror of
https://github.com/kiwix/kiwix-android.git
synced 2025-08-03 10:46:53 -04:00
Fix build on Java 19
This commit is contained in:
parent
660b376969
commit
f0096a63f8
@ -42,7 +42,7 @@ object Versions {
|
||||
|
||||
const val io_objectbox: String = "3.5.0"
|
||||
|
||||
const val io_mockk: String = "1.12.0"
|
||||
const val io_mockk: String = "1.13.4"
|
||||
|
||||
const val android_arch_lifecycle_extensions: String = "1.1.1"
|
||||
|
||||
|
@ -111,7 +111,9 @@ class AllProjectConfigurer {
|
||||
"IconDipSize",
|
||||
"UnusedResources",
|
||||
"NonConstantResourceId",
|
||||
"NotifyDataSetChanged"
|
||||
"NotifyDataSetChanged",
|
||||
"NotificationPermission",
|
||||
"MonochromeLauncherIcon"
|
||||
)
|
||||
lintConfig = target.rootProject.file("lintConfig.xml")
|
||||
}
|
||||
|
@ -22,6 +22,7 @@ import android.net.ConnectivityManager
|
||||
import android.net.NetworkInfo
|
||||
import android.os.Build
|
||||
import android.util.Log
|
||||
import androidx.annotation.VisibleForTesting
|
||||
import org.kiwix.kiwixmobile.core.R
|
||||
import java.lang.Exception
|
||||
import java.util.UUID
|
||||
@ -41,6 +42,9 @@ object NetworkUtils {
|
||||
fun isNetworkConnectionOK(networkInfo: NetworkInfo): Boolean =
|
||||
networkInfo.state == NetworkInfo.State.CONNECTED
|
||||
|
||||
@VisibleForTesting
|
||||
internal var sdkVersionForTesting = Build.VERSION.SDK_INT
|
||||
|
||||
/**
|
||||
* check if network of type WIFI is connected
|
||||
*
|
||||
@ -52,7 +56,7 @@ object NetworkUtils {
|
||||
fun isWiFi(context: Context): Boolean {
|
||||
val connectivity = context
|
||||
.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
|
||||
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||
return if (sdkVersionForTesting >= Build.VERSION_CODES.M) {
|
||||
val networkInfo = connectivity.activeNetworkInfo ?: return false
|
||||
networkInfo.type == ConnectivityManager.TYPE_WIFI && networkInfo.isConnected
|
||||
} else {
|
||||
|
@ -21,8 +21,6 @@ package org.kiwix.kiwixmobile.core.utils
|
||||
import android.content.Context
|
||||
import android.net.ConnectivityManager
|
||||
import android.net.NetworkInfo
|
||||
import android.os.Build
|
||||
import android.util.Log
|
||||
import io.mockk.every
|
||||
import io.mockk.mockk
|
||||
import io.mockk.verify
|
||||
@ -31,8 +29,6 @@ import org.junit.Assert.assertFalse
|
||||
import org.junit.Assert.assertTrue
|
||||
import org.junit.jupiter.api.Test
|
||||
import org.kiwix.kiwixmobile.core.R
|
||||
import java.lang.reflect.Field
|
||||
import java.lang.reflect.Modifier
|
||||
import java.util.regex.Pattern
|
||||
|
||||
class NetworkUtilsTest {
|
||||
@ -79,11 +75,7 @@ class NetworkUtilsTest {
|
||||
every { (connectivity.activeNetworkInfo) } returns networkInfo
|
||||
|
||||
// SDK >= 23
|
||||
try {
|
||||
setSDKVersion(Build.VERSION::class.java.getField("SDK_INT"), 23)
|
||||
} catch (e: Exception) {
|
||||
Log.d("NetworkUtilsTest", "Unable to set Build SDK Version")
|
||||
}
|
||||
NetworkUtils.sdkVersionForTesting = 23
|
||||
|
||||
// on Mobile Data
|
||||
every { (networkInfo.type) } returns ConnectivityManager.TYPE_MOBILE
|
||||
@ -110,11 +102,7 @@ class NetworkUtilsTest {
|
||||
verify(exactly = 0) { connectivity.getNetworkInfo(ConnectivityManager.TYPE_WIFI) }
|
||||
|
||||
// SDK < 23
|
||||
try {
|
||||
setSDKVersion(Build.VERSION::class.java.getField("SDK_INT"), 22)
|
||||
} catch (e: Exception) {
|
||||
Log.d("NetworkUtilsTest", "Unable to set Build SDK Version")
|
||||
}
|
||||
NetworkUtils.sdkVersionForTesting = 22
|
||||
|
||||
// WIFI connected
|
||||
every { (connectivity.getNetworkInfo(ConnectivityManager.TYPE_WIFI)) } returns networkInfo
|
||||
@ -236,17 +224,4 @@ class NetworkUtilsTest {
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
// Sets the Build SDK version
|
||||
@Throws(Exception::class)
|
||||
private fun setSDKVersion(
|
||||
field: Field,
|
||||
newValue: Any
|
||||
) {
|
||||
field.isAccessible = true
|
||||
val modifiersField = Field::class.java.getDeclaredField("modifiers")
|
||||
modifiersField.isAccessible = true
|
||||
modifiersField.setInt(field, field.modifiers and Modifier.FINAL.inv())
|
||||
field.set(null, newValue)
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user