2012-11-28 6 views
1

I이 코드를 사용하여 8open) WLAN 네트워크에 연결 :Android : 임시로 WiFi 네트워크에 연결 하시겠습니까?

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); 

...이 무선 연결은 기본 설정 네트워크리스트에 저장된다. 그래서 제가 그렇게 자주 시도 할 때 저는 엄청난 연결리스트를 얻었습니다. 그리고 그것은 제가 원하지 않는 것이 었습니다.

내 질문 : 어떻게하면 일시적으로 WLAN 네트워크에 연결할 수 있고 Android가 영구적으로 저장하지 못하게 할 수 있습니까? 아니면 더 이상 필요하지 않은 경우 그러한 네트워크를 제거 할 수있는 방법이 있습니까?

감사합니다.

답변

0

당신은 다음의 wifiConfig가 이미 저장되어있는 경우 검색에 연결하기 전에 그것을 제거 할 수 있습니다 : 다음과 같이 :

List <WifiConfiguration> wifiConf = wifiManager.getConfiguredNetworks(); 
int netId; 
for(WifiConfiguration wf: wifiConf){ 
    if(wf.BSSID.equals(desiredBSSID)){ 
     netId = wf.networkId; 
     wifiManager.removeNetwork(netId); 
    } 
}