1

このコードを使用して8open)WLANネットワークに接続する場合:

WifiConfiguration wifiConfig = new WifiConfiguration(); 
wifiConfig.BSSID =result.BSSID; // BSSID of detected network
wifiConfig.priority = 1; 
wifiConfig.allowedKeyManagement.set(KeyMgmt.NONE); 
wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP); 
wifiConfig.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN); 
wifiConfig.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE); 
wifiConfig.status=WifiConfiguration.Status.ENABLED; 

int netId = scanData.wifiManager.addNetwork(wifiConfig); 
scanData.wifiManager.enableNetwork(netId, true);

...このWiFi接続は優先ネットワークのリストに保存されます。ですから、それを頻繁に試すと、非常に膨大な数の接続リストが表示されます。これは、私が望まないことです。

だから私の質問:WLANネットワークへの接続を一時的に確立し、Androidに永続的に保存させないようにするにはどうすればよいですか?または、不要になった場合にそのようなネットワークを削除する方法はありますか?

ありがとう!

4

2 に答える 2

1

ネットワークから切断するときは、保存されているリストからネットワークを削除するだけです。詳細はこちらをご覧ください:Androidでは、Java経由の設定でネットワークのWI-FIリストをどのようにクリアしますか?

于 2012-11-28T11:35:33.317 に答える
0

wifiConfigがすでに保存されているかどうかを検索し、接続する前に削除することができます。次のようになります。

List <WifiConfiguration> wifiConf = wifiManager.getConfiguredNetworks();
int netId;
for(WifiConfiguration wf: wifiConf){
    if(wf.BSSID.equals(desiredBSSID)){
        netId = wf.networkId;
        wifiManager.removeNetwork(netId);
    }
}
于 2016-08-23T03:34:22.683 に答える