我正在尝试连接到 android 10 中的特定 wifi 网络。我已经拥有可用的凭据,我正在添加网络建议:
val suggestion = WifiNetworkSuggestion.Builder()
.setSsid("ssid")
.setWpa2Passphrase("password")
.build()
wifiManager.removeNetworkSuggestions(mutableListOf(suggestion))
when (wifiManager.addNetworkSuggestions(mutableListOf(suggestion))) {
WifiManager.STATUS_NETWORK_SUGGESTIONS_SUCCESS -> {
networkAdded()
}
WifiManager.STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_DUPLICATE -> {
networkDuplicate()
}
else -> {
networkAddFailed()
}
}
我能够看到通知(尽管只是应用程序第一次请求此通知,这在很大程度上是有道理的,因为它实际上是在请求许可才能建议网络)。但是,在我允许之后,我似乎无法连接到该网络。特别是如果我已经有到其他网络的 wifi 连接。
新网络没有出现在我的已保存网络列表中,如果我在 wifi 扫描列表中找到它,然后单击它,它会将其视为新网络。
我不希望该应用程序能够强制系统连接,但我希望用户能够通过 wifi 设置自己进行连接,而无需从头开始配置。
我也尝试过使用 ConnectivityManager 强制连接,但这并没有添加实际的持久 wifi 连接。它只是为了在应用程序在内存中时强制连接特定应用程序(至少这是我对它的理解)。