首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何查找特定SSID的网络Id?

问如何查找特定SSID的网络Id?
EN

Stack Overflow用户
提问于 2019-07-24 16:49:50
回答 1查看 683关注 0票数 0

由于我正在编写api,其中用户将传递SSID和密码作为参数。我尝试从SSID获取网络Id以忘记特定的wifi。

EN

回答 1

Stack Overflow用户

发布于 2019-07-24 19:41:41

我确信,如果您的设备正在保存特定的WiFi网络,它只会保存SSID和密码。例如,如果您使用与家庭网络相同的SSID和密码建立WiFi热点,您的手机将自动连接到该热点。这就是为什么保存开放网络是不安全的。你永远不会知道谁在另一边。

我没有尝试过这个,但是看起来你需要做的就是这样:

代码语言:javascript
复制
WifiManager wifiMgr = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
List<WifiConfiguration> list = wifiMgr.getConfiguredNetworks();

for(WifiConfiguration config : list){
    if("your_ssid".equals(config.SSID)){
        wifiMgr.removeNetwork(config.networkId)
    }
}

如果你的目标是API >= 29,你应该使用

代码语言:javascript
复制
 wifiMgr.removeNetworkSuggestions (List<WifiNetworkSuggestion> networkSuggestions)

你可以构建这样的建议:

代码语言:javascript
复制
final WifiNetworkSuggestion suggestion1 = new Builder()
  .setSsid("test111111")
  .build()
final WifiNetworkSuggestion suggestion2 = new Builder()
  .setSsid("test222222")
  .setWpa2Passphrase("test123456")
  .build()
final WifiNetworkSuggestion suggestion3 = new Builder()
  .setSsid("test333333")
  .setWpa3Passphrase("test6789")
  .build()

更多信息:https://developer.android.com/reference/android/net/wifi/WifiManager.html#removeNetworkSuggestions(java.util.List%3Candroid.net.wifi.WifiNetworkSuggestion%3E) https://developer.android.com/reference/android/net/wifi/WifiNetworkSuggestion.Builder.html#build()

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57178872

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档