下面是我的代码
private void test()
 {
 
 
 if(mWifiManager.isWifiEnabled()==false)
 {
 System.out.println("打开wifi...");
 if(OpenWifi())
 {
 try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
 }
 }else{
 showInfo("wifi已打开");
 }
 
 if (mWifiManager.startScan())    //扫描可用的无线网络
 {
 List<ScanResult> scanResultList = mWifiManager.getScanResults();
 for (int i = 0; i < scanResultList.size(); i++) 
 {
 ScanResult scanRet = scanResultList.get(i); 
 if (scanRet.SSID.equalsIgnoreCase(wifi_siid))   //找到需要的网络
 {
 System.out.println("配置网络...");
 mWifiConfiguration=new WifiConfiguration();
 mWifiConfiguration.SSID= "\""+wifi_siid+ "\"";
 mWifiConfiguration.preSharedKey="\""+wifi_password+"\"";
 mWifiConfiguration.SSID="\"fjq\"";
 mWifiConfiguration.preSharedKey="\"zjuttxz321\"";
 mWifiConfiguration.hiddenSSID=false;
 mWifiConfiguration.status=WifiConfiguration.Status.ENABLED;
 mWifiConfiguration.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40);
// mWifiConfiguration.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN);
 mWifiConfiguration.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
 mWifiConfiguration.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
 mWifiConfiguration.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
 
 netId=mWifiManager.addNetwork(mWifiConfiguration);
 Log.v(Tag,"******************id= ******************"+netId);
 if(netId==-1){
 showInfo("wifi添加失败!");
 return;
 }
 
 //mWifiManager.saveConfiguration();
 //mWifiManager.updateNetwork(mWifiConfiguration);
 boolean b=mWifiManager.enableNetwork(netId, true);//该函数返回值为true了,但为什么连接不上去呢?
 
 Log.v(Tag,"b= "+b);
 if(b){
 System.out.println("wifi连接成功!");
 showInfo("当前连接信息:");
 wifiInfo=mWifiManager.getConnectionInfo();
 showInfo(wifiInfo.toString());
 }else{
 showInfo("wifi连接失败!");
 }
 break;
 }
 if(i==scanResultList.size()-1){
 showInfo("没有查询到指定网络!");
 System.out.println("没有查询到指定网络!");
 return ;
 }
 
 }
 } wifi一直连不上去。mWifiManager.addNetwork已经成功把配置信息添加到wifi列表中去了,这个在settings中可以查找到。mWifiManager.enableNetwork(netId, true);//该函数返回值为true了,但为什么连接不上去呢?       这个函数是异步调用的,返回true后连接不上去?    配置信息应该没有错误,我都是根据能连上去的那个配置进行配置的。用logcat输出如下信息:
I/System.out( 2850): 配置网络...
I/wpa_supplicant(  262): wpa_config_parse_psk: passphrase 0x75100 zjuttxz321
D/WifiService(  147): need reconfig   //根据这个信息,可能是配置错了,但不知道这句是哪里输出来的,一直没找到。
V/WiFiTestActivity( 2850): id= 3
I/wpa_supplicant(  262): CTRL-EVENT-STATE-CHANGE id=2 state=0 BSSID=00:00:00:00:00:00
V/WifiMonitor(  147): Event [CTRL-EVENT-STATE-CHANGE id=2 state=0 BSSID=00:00:00:00:00:00]
V/WifiStateTracker(  147): Changing supplicant state: SCANNING ==> DISCONNECTED
V/WiFiTestActivity( 2850): b= true
I/System.out( 2850): wifi连接成功!
I/wpa_supplicant(  262): CTRL-EVENT-STATE-CHANGE id=-1 state=2 BSSID=00:00:00:00:00:00
V/WifiMonitor(  147): Event [CTRL-EVENT-STATE-CHANGE id=-1 state=2 BSSID=00:00:00:00:00:00]
V/WifiStateTracker(  147): Changing supplicant state: DISCONNECTED ==> SCANNING
I/System.out( 2850): 3
I/System.out( 2850): wifi enable
I/System.out( 2850): 网络连接成功!D/WifiService(  147): need reconfig   //根据这个信息,可能是配置错了,但不知道这句是哪里输出来的,一直没找到。请那位帮帮我找找问题?谢谢。