यह मुझे मार रहा है और किसी भी मदद की सराहना की जाएगी।एंड्रॉइड wifimanager हमेशा सच देता है
मैं वाईफाई प्रबंधक का उपयोग कर एक खुले नेटवर्क से कनेक्ट करना चाहता हूं। मेरी समस्या यह है कि कोड किसी भी नेटवर्क से कनेक्शन का दावा करता है - यहां तक कि गैर-मौजूदा भी। नीचे पूरा कोड है जो निष्पादित हो जाता है और नेटवर्क के एसएसआईडी के साथ बुलाया जाता है। इससे कोई फर्क नहीं पड़ता कि आप नेटवर्क के एसएसआईडी के रूप में किस स्ट्रिंग को पास करते हैं, भले ही कोई भी नेटवर्क किसी भी आकार या रूप में मौजूद न हो, सक्षम नेटवर्कवर्क दावों को सच कर देता है, जिसका मेरा मानना है कि यह नेटवर्क से जुड़ा हुआ है।
मुझे यह सुनिश्चित करने के लिए क्या करना है कि मेरे पास कनेक्शन है। इसलिए यदि मैं एक नेटवर्क एसएसआईडी पास करता हूं जो अस्तित्व में नहीं है (उदाहरण के लिए, यह सीमा से बाहर है) एपीआई को कनेक्ट करने का प्रयास करते समय विफलता वापस करनी चाहिए।
किसी भी विचार/संकेत/सुझावों की बहुत सराहना की जाएगी।
public boolean conto (String network){
WifiConfiguration wifiConfiguration = new WifiConfiguration();
wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
List<WifiConfiguration> configs = null;
int inetId = -1;
// make sure there are no funny stuff in the config
configs = wifi.getConfiguredNetworks();
for (WifiConfiguration config : configs) {
wifi.removeNetwork(config.networkId);
Log.d("********", "Removed Network: SSID=[" + config.SSID + "] and ID=[" + config.networkId + "]");
}
// Now add the network
wifiConfiguration.SSID = "\"" + network + "\"";
wifiConfiguration.hiddenSSID = false;
//wifiConfiguration.priority = 1;
//wifiConfiguration.networkId = 999;
inetId = wifi.addNetwork(wifiConfiguration);
if(inetId < 0) {
Log.d("********", "Could Not Add Network......... [" + wifiConfiguration.SSID + "]");
}
else {
Log.d("********", "Added Network......... [" + wifiConfiguration.SSID + "]");
// Lets be paranoid and double check the config file
Log.d("********", " +++++++++++++++++++++++++ This is what I have in Config File");
configs = wifi.getConfiguredNetworks();
for (WifiConfiguration config : configs) {
Log.d("********", "In the Config file after add, SSID=[" + config.SSID + "], ID=[" + config.networkId + "]");
}
// Now Enable the network
boolean successConnected = wifi.enableNetwork(inetId, true);
//boolean successAssociated = wifi.reassociate(); This did not change the results
if(successConnected) {
Log.d("********", "Connected to......... [" + inetId + "]");
}
else {
Log.d("********", "Could Not Connect to......... [" + inetId + "]");
}
}
return false;
}
क्या आपने कभी इसे हल किया है? मुझे [एक ही समस्या] है (http://stackoverflow.com/questions/11378452/android-wifimanager-making-a-phantom-connection)। – gcl1