权限自动拒绝CHANGE_WIFI_STATE

时间:2019-06-05 00:07:04

标签: android android-permissions

我正在尝试编写一个显示附近AP列表并自动连接到其中的测试功能。但是,当我尝试在运行时请求所需的权限时,它会被自动拒绝。

我所做的事情:

  • 我在清单中添加了以下权限:<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
  • 我在清单中添加了以下“使用功能”行:<uses-feature android:name="android.hardware.wifi"/>
  • 我在运行时查询权限:ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.CHANGE_WIFI_STATE), REQ_WIFI_STATE)

有人可以帮助我了解为什么自动拒绝此权限的原因吗?我在这里做错什么了。

为防止任何人理解我要实现的目标,以下是获得许可后将被调用的功能的完整代码,即 SUPPOSED ,以及我覆盖的{{ 1}}函数:

connectToAP():

onRequestPermissionsResult

onRequestPermissionsResult():

{
    val networkSSID = "SSID_To_Connect_To"
    Log.d("DEBUG#", "Looking for $networkSSID")

    val wifiManager = applicationContext.getSystemService(Context.WIFI_SERVICE) as WifiManager

    wifiManager.configuredNetworks.forEach { network ->
        network?.SSID.let { SSID ->
            Log.d("DEBUG#", "Checking $SSID...")
            if (SSID == ("\"" + networkSSID + "\"")) {
                Log.d("DEBUG#", "Found AP!")
                wifiManager.disconnect()
                wifiManager.enableNetwork(network.networkId, true)
                wifiManager.reconnect()

                return@forEach
            }
        }
    }
}

0 个答案:

没有答案