Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何检查WiFi扫描限制是启用还是禁用?_Java_Android_Kotlin_Android 9.0 Pie_Android 10.0 - Fatal编程技术网

Java 如何检查WiFi扫描限制是启用还是禁用?

Java 如何检查WiFi扫描限制是启用还是禁用?,java,android,kotlin,android-9.0-pie,android-10.0,Java,Android,Kotlin,Android 9.0 Pie,Android 10.0,我有一个开发场景,需要检查WiFi限制选项是启用还是禁用? 如果它是启用的,那么我希望以编程方式禁用它 private fun prepareForWiFiScan() { Toast.makeText(this, "Wifi scan preparation started", Toast.LENGTH_SHORT).show() circularProgressbar.visibility = View.VISIBLE wiFiManager = appl

我有一个开发场景,需要检查WiFi限制选项是启用还是禁用?
如果它是启用的,那么我希望以编程方式禁用它

private fun prepareForWiFiScan() {

 Toast.makeText(this, "Wifi scan preparation started", Toast.LENGTH_SHORT).show()
        circularProgressbar.visibility = View.VISIBLE
        wiFiManager = applicationContext.getSystemService(Context.WIFI_SERVICE) as WifiManager
        if (!wiFiManager.isWifiEnabled) {
            wiFiManager.isWifiEnabled = true
        }
        wiFiScanReceiver = object : BroadcastReceiver() {
            override fun onReceive(context: Context, intent: Intent) {
                Toast.makeText(this@MainActivity, "Wifi scan finished", Toast.LENGTH_SHORT).senter code herehow()
                val i'sSuccess: Boolean = when {
                    android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M -> intent.getBooleanExtra(
                            WifiManager.EXTRA_RESULTS_UPDATED,
                            false
                    )
                    else -> intent.getBooleanExtra(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION, false)
                }
                circularProgressbar.visibility = View.GONE
                when (isSuccess) {
                    true -> scanSuccess()
                    false -> scanFail()
                }
            }
        }
        registerReceiverAndStartScan()
    }

 private fun registerReceiverAndStartScan() {
        val intentFilter = IntentFilter()
        intentFilter.addAction(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION)
        registerReceiver(wiFiScanReceiver, intentFilter)
        val success = wiFiManager.startScan()
        if (!success) {
            scanFail()
        }
    }

您必须使用广播接收器来接收此信息。检查这里

在android 10之前,我们无法检查WiFi扫描节流阀是启用还是禁用。然而,在android R中,增加了一种新方法来检查WiFi扫描限制是启用还是禁用。 请参考以下链接。

实际上,您也可以使用

Settings.Global.getInt(this.getContentResolver(), "wifi_scan_throttle_enabled")

如果启用了wifi限制,则返回
1
,否则返回
0

如果您向我们提供您工作的代码片段,那就太好了。