【问题标题】:forget a network in Wifi Settings does NOT update Configured List在 Wifi 设置中忘记网络不会更新配置列表
【发布时间】:2014-04-23 08:36:51
【问题描述】:

让我们假设用户忘记了 Wifi 设置中的路由器“R1”。 现在,当我使用以下命令访问所有已配置路由器的列表时:

wifiManager.getConfiguredNetworks();

“R1”仍然存在于列表中。那么当我们忘记一个路由器时,它不会从配置列表中删除吗?

【问题讨论】:

    标签: android android-wifi wifimanager


    【解决方案1】:

    我不确定我的解决方案,但您可以检查它是否适合您。 getConfiguredNetworks() 返回 ListWifiConfiguration 对象,这些对象具有 status 字段,我认为可以将其与 WifiConfiguration.Status 对象的字段进行比较。所以,请尝试以下方法:

    List<WifiConfiguration> list = wifiManager.getConfiguredNetworks();
    for (WifiConfiguration x : list) {
        if (x.status != WifiConfiguration.Status.DISABLED){
            ...
        }
    }
    

    【讨论】:

      【解决方案2】:

      当您手动'forget' 一个网络时,它会从您的配置列表中删除。这可以通过以编程方式添加网络并使用本机 android WiFi 配置管理器添加网络来实现。

      本机 Wifi 配置管理器不添加接入点的 BSSID。我的应用程序确实将 BSSID 添加到了接入点。原生 WiFi 控制器接受了这两者。但是,当出现要忘记的配置选项时,操作系统只会忘记一个。

      我通过wiping all my configurations 修复了这个问题,并修复了我的代码,如果相同的 SSID 已经在配置和范围内,则不会以编程方式添加网络。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-04-18
        • 2012-11-20
        • 2023-02-16
        • 1970-01-01
        • 2012-03-04
        • 1970-01-01
        • 2016-01-11
        相关资源
        最近更新 更多