2014-04-01 5 views
8

हाय मैं wifimanager api का उपयोग करके अपने ऐप को एक विशिष्ट एक्सेस पॉइंट से कनेक्ट करने का प्रयास कर रहा हूं। जैसा कि यह खड़ा है, मेरे पास मेरे क्षेत्र में सभी एक्सेस पॉइंट की एक सूची है, इस सूची से मैं उन्हें एक सरणी में संग्रहीत कर रहा हूं और किससे कनेक्ट करना है। लेकिन इस चरण में खुराक कनेक्ट नहीं है। कोई मेरी मदद कर सकता है।विशिष्ट एक्सेस पॉइंट से कनेक्ट करें

(यह एक खुला नेटवर्क मैं से कनेक्ट करने के कोशिश कर रहा हूँ है।) यहाँ मेरी कोड है:,

public void WifiConfiguration(){ 
    try { 
     ScanResult networkData = getIntent().getParcelableExtra("networkData"); 

     WifiManager wifiManager = (WifiManager)getApplicationContext().getSystemService(Context.WIFI_SERVICE); 
     String networkPassWord = ""; 

     WifiConfiguration conf = new WifiConfiguration(); 
     conf.SSID = "\"" + networkData.SSID + "\""; 
     conf.BSSID = "\"" + networkData.BSSID + "\""; 
     conf.hiddenSSID = true; 
     conf.wepKeys[0] = "\"" + networkPassWord + "\""; 
     conf.wepTxKeyIndex = 0; 
     conf.status = WifiConfiguration.Status.ENABLED;   
     conf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP); 
     conf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP); 
     conf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK); 
     conf.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP); 
     conf.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP); 
     conf.allowedProtocols.set(WifiConfiguration.Protocol.RSN); 

     conf.preSharedKey = "\""+ networkPassWord +"\""; 

     //conf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE); 

     Log.d(TAG, "Initialising WIFI Manager"); 

     int id = wifiManager.addNetwork(conf); 
     Log.d(TAG, "conf.SSID: "+conf.SSID); 
     Log.d(TAG, "id: "+id); 
     wifiManager.disconnect(); 
     wifiManager.enableNetwork(id, true); 
     wifiManager.reconnect();  

     Log.d(TAG, "Should be connected...."); 

    } catch (Exception e) { 

     Log.d(TAG, e.toString()); 
    } 

} 
+0

जब आप कनेक्शन स्थिति का परीक्षण करते हैं? – atok

+0

मैं नेटवर्क पर उपयोगकर्ताओं की संख्या देख रहा हूं और कोई नहीं है, इसलिए ऐप कनेक्शन नहीं बना रहा है – user3292394

+0

स्वयं को उत्तर मिला। आपकी सभी मदद धन्यवाद। – user3292394

उत्तर

0
conf.SSID = "\"" + networkData.SSID + "\""; 
    conf.BSSID = "\"" + networkData.BSSID + "\""; 

BSSID की जरूरत नहीं है दोहरे उद्धरण चिह्नों में संलग्न किया जा करने के लिए केवल SSID।

संबंधित मुद्दे