无法以编程方式配置wifi开放网络android?

时间:2010-08-11 07:44:00

标签: android android-wifi

我已经编写了将开放网络添加到wifi配置列表的代码。它将开放网络添加到已配置列表并在Wifi设置中显示相同的SSID。但它添加了相同名称的相同网络,但它没有显示任何打开网络当我在安全WEP的警报节目上按下第二个时,我在同一网络上观察到以下文字

1)开放网络 2)记住,不在范围内 但是我想在我的列表中添加开放网络,为什么添加这个额外的网络,如果我连接相同的网络,它会尝试以编程方式连接到(2)一个。实际上我改变了安全网络以打开网络进行此试验。它显示打开的网络文本,当我按下它时,它获得地址并手动连接成功。为什么这个额外的添加如何添加打开的网络到我的列表。参考plz看到图像的链接。

http://www.freeimagehosting.net/uploads/3dbccfc2bd.png

代码段:

    String hotSpotSsid = hotSpot.SSID;
    String hotSpotBssid = hotSpot.BSSID;
    Log.i(TAG,"in RSSI Changed Acion SSID: "+hotSpotSsid+" BSSID: "+hotSpotBssid);
    StringBuffer sBuf = new StringBuffer("\"");
    sBuf.append(hotSpotSsid+"\"");
    hotSpotSsid = sBuf.toString();

    WifiConfiguration wifiConfiguration = new WifiConfiguration();
    wifiConfiguration.SSID = hotSpotSsid;
    wifiConfiguration.allowedKeyManagement.set(KeyMgmt.NONE);
    wifiConfiguration.BSSID = hotSpotBssid;
    wifiConfiguration.hiddenSSID = false;
   // wifiConfiguration.priority = 1;

    // add this to the configured networks
    int inetId = wifiManager.addNetwork(wifiConfiguration);
    Log.i(TAG,"INetId :"+inetId);
    configs = wifiManager.getConfiguredNetworks();
    Log.e(TAG,"After adding config :"+configs);
    if(inetId < 0) {
        Log.i(TAG,"Unable to add network configuration for SSID: "+hotSpotSsid);
        return;
    }else {
        message="\t Successfully added to configured Networks";
        Log.i(TAG,message);
    }

的问候, Rajendar

2 个答案:

答案 0 :(得分:0)

尝试删除SSID并查看其是否有效。我有一个类似的问题,这对我有用。

正如您所做的那样,在SSID中附加和添加引号应该可以正常工作。不知道为什么不这样做。

答案 1 :(得分:-1)

将SSID设为wifiConfiguration.SSID =“\”“。​​concat(SSID_NAME).concat(”\“”);