mirror of
https://github.com/kiwix/kiwix-android.git
synced 2025-08-03 18:56:44 -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_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"
|
const val android_arch_lifecycle_extensions: String = "1.1.1"
|
||||||
|
|
||||||
|
@ -111,7 +111,9 @@ class AllProjectConfigurer {
|
|||||||
"IconDipSize",
|
"IconDipSize",
|
||||||
"UnusedResources",
|
"UnusedResources",
|
||||||
"NonConstantResourceId",
|
"NonConstantResourceId",
|
||||||
"NotifyDataSetChanged"
|
"NotifyDataSetChanged",
|
||||||
|
"NotificationPermission",
|
||||||
|
"MonochromeLauncherIcon"
|
||||||
)
|
)
|
||||||
lintConfig = target.rootProject.file("lintConfig.xml")
|
lintConfig = target.rootProject.file("lintConfig.xml")
|
||||||
}
|
}
|
||||||
|
@ -22,6 +22,7 @@ import android.net.ConnectivityManager
|
|||||||
import android.net.NetworkInfo
|
import android.net.NetworkInfo
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
|
import androidx.annotation.VisibleForTesting
|
||||||
import org.kiwix.kiwixmobile.core.R
|
import org.kiwix.kiwixmobile.core.R
|
||||||
import java.lang.Exception
|
import java.lang.Exception
|
||||||
import java.util.UUID
|
import java.util.UUID
|
||||||
@ -41,6 +42,9 @@ object NetworkUtils {
|
|||||||
fun isNetworkConnectionOK(networkInfo: NetworkInfo): Boolean =
|
fun isNetworkConnectionOK(networkInfo: NetworkInfo): Boolean =
|
||||||
networkInfo.state == NetworkInfo.State.CONNECTED
|
networkInfo.state == NetworkInfo.State.CONNECTED
|
||||||
|
|
||||||
|
@VisibleForTesting
|
||||||
|
internal var sdkVersionForTesting = Build.VERSION.SDK_INT
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* check if network of type WIFI is connected
|
* check if network of type WIFI is connected
|
||||||
*
|
*
|
||||||
@ -52,7 +56,7 @@ object NetworkUtils {
|
|||||||
fun isWiFi(context: Context): Boolean {
|
fun isWiFi(context: Context): Boolean {
|
||||||
val connectivity = context
|
val connectivity = context
|
||||||
.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
|
.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
|
val networkInfo = connectivity.activeNetworkInfo ?: return false
|
||||||
networkInfo.type == ConnectivityManager.TYPE_WIFI && networkInfo.isConnected
|
networkInfo.type == ConnectivityManager.TYPE_WIFI && networkInfo.isConnected
|
||||||
} else {
|
} else {
|
||||||
|
@ -21,8 +21,6 @@ package org.kiwix.kiwixmobile.core.utils
|
|||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.net.ConnectivityManager
|
import android.net.ConnectivityManager
|
||||||
import android.net.NetworkInfo
|
import android.net.NetworkInfo
|
||||||
import android.os.Build
|
|
||||||
import android.util.Log
|
|
||||||
import io.mockk.every
|
import io.mockk.every
|
||||||
import io.mockk.mockk
|
import io.mockk.mockk
|
||||||
import io.mockk.verify
|
import io.mockk.verify
|
||||||
@ -31,8 +29,6 @@ import org.junit.Assert.assertFalse
|
|||||||
import org.junit.Assert.assertTrue
|
import org.junit.Assert.assertTrue
|
||||||
import org.junit.jupiter.api.Test
|
import org.junit.jupiter.api.Test
|
||||||
import org.kiwix.kiwixmobile.core.R
|
import org.kiwix.kiwixmobile.core.R
|
||||||
import java.lang.reflect.Field
|
|
||||||
import java.lang.reflect.Modifier
|
|
||||||
import java.util.regex.Pattern
|
import java.util.regex.Pattern
|
||||||
|
|
||||||
class NetworkUtilsTest {
|
class NetworkUtilsTest {
|
||||||
@ -79,11 +75,7 @@ class NetworkUtilsTest {
|
|||||||
every { (connectivity.activeNetworkInfo) } returns networkInfo
|
every { (connectivity.activeNetworkInfo) } returns networkInfo
|
||||||
|
|
||||||
// SDK >= 23
|
// SDK >= 23
|
||||||
try {
|
NetworkUtils.sdkVersionForTesting = 23
|
||||||
setSDKVersion(Build.VERSION::class.java.getField("SDK_INT"), 23)
|
|
||||||
} catch (e: Exception) {
|
|
||||||
Log.d("NetworkUtilsTest", "Unable to set Build SDK Version")
|
|
||||||
}
|
|
||||||
|
|
||||||
// on Mobile Data
|
// on Mobile Data
|
||||||
every { (networkInfo.type) } returns ConnectivityManager.TYPE_MOBILE
|
every { (networkInfo.type) } returns ConnectivityManager.TYPE_MOBILE
|
||||||
@ -110,11 +102,7 @@ class NetworkUtilsTest {
|
|||||||
verify(exactly = 0) { connectivity.getNetworkInfo(ConnectivityManager.TYPE_WIFI) }
|
verify(exactly = 0) { connectivity.getNetworkInfo(ConnectivityManager.TYPE_WIFI) }
|
||||||
|
|
||||||
// SDK < 23
|
// SDK < 23
|
||||||
try {
|
NetworkUtils.sdkVersionForTesting = 22
|
||||||
setSDKVersion(Build.VERSION::class.java.getField("SDK_INT"), 22)
|
|
||||||
} catch (e: Exception) {
|
|
||||||
Log.d("NetworkUtilsTest", "Unable to set Build SDK Version")
|
|
||||||
}
|
|
||||||
|
|
||||||
// WIFI connected
|
// WIFI connected
|
||||||
every { (connectivity.getNetworkInfo(ConnectivityManager.TYPE_WIFI)) } returns networkInfo
|
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