From a4a734458b7e93b2e02f38a895acfb172970efee Mon Sep 17 00:00:00 2001 From: vvb2060 Date: Fri, 9 Dec 2022 22:20:44 +0800 Subject: [PATCH] Fix network capabilities --- .../core/utils/net/LollipopNetworkObserver.kt | 14 ++++++++------ .../core/utils/net/MarshmallowNetworkObserver.kt | 4 +--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/topjohnwu/magisk/core/utils/net/LollipopNetworkObserver.kt b/app/src/main/java/com/topjohnwu/magisk/core/utils/net/LollipopNetworkObserver.kt index 161bde696..6de99b2a6 100644 --- a/app/src/main/java/com/topjohnwu/magisk/core/utils/net/LollipopNetworkObserver.kt +++ b/app/src/main/java/com/topjohnwu/magisk/core/utils/net/LollipopNetworkObserver.kt @@ -1,14 +1,13 @@ package com.topjohnwu.magisk.core.utils.net -import android.annotation.TargetApi import android.content.Context import android.net.ConnectivityManager import android.net.Network import android.net.NetworkCapabilities import android.net.NetworkRequest +import android.os.Build import androidx.collection.ArraySet -@TargetApi(21) open class LollipopNetworkObserver( context: Context, callback: ConnectionCallback @@ -17,10 +16,13 @@ open class LollipopNetworkObserver( private val networkCallback = NetCallback() init { - val request = NetworkRequest.Builder() - .addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET) - .build() - manager.registerNetworkCallback(request, networkCallback) + val builder = NetworkRequest.Builder() + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + builder.addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED) + } else { + builder.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET) + } + manager.registerNetworkCallback(builder.build(), networkCallback) } @Suppress("DEPRECATION") diff --git a/app/src/main/java/com/topjohnwu/magisk/core/utils/net/MarshmallowNetworkObserver.kt b/app/src/main/java/com/topjohnwu/magisk/core/utils/net/MarshmallowNetworkObserver.kt index 8f6eebab1..62b5baf3b 100644 --- a/app/src/main/java/com/topjohnwu/magisk/core/utils/net/MarshmallowNetworkObserver.kt +++ b/app/src/main/java/com/topjohnwu/magisk/core/utils/net/MarshmallowNetworkObserver.kt @@ -1,5 +1,3 @@ -@file:Suppress("DEPRECATION") - package com.topjohnwu.magisk.core.utils.net import android.annotation.TargetApi @@ -32,7 +30,7 @@ class MarshmallowNetworkObserver( override fun getCurrentState() { callback(manager.getNetworkCapabilities(manager.activeNetwork) - ?.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET) ?: false) + ?.hasCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED) ?: false) } private inner class IdleBroadcastReceiver: BroadcastReceiver() {