From c3f5625eeca9182846e511a7920192bfd4308537 Mon Sep 17 00:00:00 2001 From: Mygod Date: Mon, 25 Oct 2021 00:49:43 -0400 Subject: [PATCH] Fallback for p2pMacRandomizationSupported --- .../vpnhotspot/net/wifi/WifiApManager.kt | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/mobile/src/main/java/be/mygod/vpnhotspot/net/wifi/WifiApManager.kt b/mobile/src/main/java/be/mygod/vpnhotspot/net/wifi/WifiApManager.kt index d99e13f8..6fd1804c 100644 --- a/mobile/src/main/java/be/mygod/vpnhotspot/net/wifi/WifiApManager.kt +++ b/mobile/src/main/java/be/mygod/vpnhotspot/net/wifi/WifiApManager.kt @@ -35,17 +35,22 @@ object WifiApManager { PackageManager.MATCH_SYSTEM_ONLY).single() private const val CONFIG_P2P_MAC_RANDOMIZATION_SUPPORTED = "config_wifi_p2p_mac_randomization_supported" - val p2pMacRandomizationSupported get() = when (Build.VERSION.SDK_INT) { - 29 -> Resources.getSystem().run { - getBoolean(getIdentifier(CONFIG_P2P_MAC_RANDOMIZATION_SUPPORTED, "bool", "android")) + val p2pMacRandomizationSupported get() = try { + when (Build.VERSION.SDK_INT) { + 29 -> Resources.getSystem().run { + getBoolean(getIdentifier(CONFIG_P2P_MAC_RANDOMIZATION_SUPPORTED, "bool", "android")) + } + in 30..Int.MAX_VALUE -> @TargetApi(30) { + val info = resolvedActivity.activityInfo + val resources = app.packageManager.getResourcesForApplication(info.applicationInfo) + resources.getBoolean(resources.findIdentifier(CONFIG_P2P_MAC_RANDOMIZATION_SUPPORTED, "bool", + RESOURCES_PACKAGE, info.packageName)) + } + else -> false } - in 30..Int.MAX_VALUE -> @TargetApi(30) { - val info = resolvedActivity.activityInfo - val resources = app.packageManager.getResourcesForApplication(info.applicationInfo) - resources.getBoolean(resources.findIdentifier(CONFIG_P2P_MAC_RANDOMIZATION_SUPPORTED, "bool", - RESOURCES_PACKAGE, info.packageName)) - } - else -> false + } catch (e: RuntimeException) { + Timber.w(e) + false } @get:RequiresApi(30)