如何在Android中连接到预先配置的Wifi?

use*_*099 1 java android connect wifi

所以我一直在为自己找出这些东西时遇到一些麻烦,而且我对Android很新,所以我真的很感激一些帮助.

我已经在SO上看了这些答案:如何以编程方式连接Android中的特定Wi-Fi网络?

我看到你必须配置网络,手动输入密码,并将其添加到已配置的网络列表等.

我想知道在用户已经配置/保存多个wifi的情况下会做什么,并选择特定的一个以编程方式连接?这是否意味着它们已经出现在getConfiguredNetworks()方法调用中?如果是这样,那么如何执行.enableNetwork(int netId,boolean disableOthers)?

作为旁注,这两个函数都是WifiManager类的一部分.希望这一切都有意义!

小智 8

WifiManager wifiManager = (WifiManager)context.getSystemService(WIFI_SERVICE);              
int netId = -1;         
for (WifiConfiguration tmp : wifiManager.getConfiguredNetworks()) 
   if (tmp.SSID.equals( "\""+"Your SSID"+"\"")) 
   {
      netId = tmp.networkId;                   
      wifiManager.enableNetwork(netId, true);
   }
Run Code Online (Sandbox Code Playgroud)

只需将第3行中的"您的SSID"字符串更改为您要连接的SSID即可.

并在清单中添加此权限:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
Run Code Online (Sandbox Code Playgroud)

我对StackOverflow的第一个贡献,希望它可以帮助某人:D