wifi连接的问题,代码中指定SSID 和密码,然后通过API函数连接,怎么搞都连接不上去?
代码如下:
WifiConfiguration wc = new WifiConfiguration();
        wc.SSID = "\"WIRLLESS\"";
        //wc.networkId=0;
        wc.priority=1;
        wc.wepTxKeyIndex=0;
        wc.status=0;
        wc.hiddenSSID=false;
        
        wc.preSharedKey = "B708E3796DE46C78C0F0889837";
        //wc.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN);
        //wc.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
        wc.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);//1
        //wc.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
        //wc.allowedProtocols.set(WifiConfiguration.Protocol.RSN);
        int res = wifiManager.addNetwork(wc);
        Log.d(Tag, "add Network returned " + res);
        boolean b = wifiManager.enableNetwork(res, true);
        Log.d(Tag,b+"  linked?");res 老是返回-1,b一直是false
还有LOG信息显示一个错误:LINE0 : invaild PSK ’B708E3796DE46C78C0F0889837‘。
不明白密码字符串两边多了个单引号?求高手解答 

解决方案 »

  1.   

    注册了Wifi连接的permission没有
      <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" ></uses-permission>
      <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" ></uses-permission>
      

  2.   

    我知道原因了,是我的一些wifi参数设错了
      

  3.   

      是不是根据 上面代码中的 boolean b   这个布尔值来判断是否已连接上了改wifi热点  ???
      

  4.   

     wc.preSharedKey = "B708E3796DE46C78C0F0889837";改成
     wc.preSharedKey = "\""B708E3796DE46C78C0F0889837"\"";
      

  5.   

     wc.SSID = "\"WIRLLESS\"";也要注意,改成格式为
     wc.SSID = "\""+SSID字符串+"\"";
      

  6.   

    怎么判断成功连接上了wifi热点