gpt4 book ai didi

java - 连接到 WiFi 为什么 .disconnect() 而不是 reconnect()?

转载 作者:行者123 更新时间:2023-12-02 07:40:11 26 4
gpt4 key购买 nike

全部 - 我有一个应用程序,我希望用户能够在其中连接 WiFi 网络。我看了这个question我的应用程序能够断开连接然后重新连接(换句话说,我有正确的 SSID 和密码),但他并不完全是我想要做的。如果尚未连接,我只想连接,如果已经连接,则不执行任何操作。当我关闭 WiFi(通过设置)并运行我的应用程序时,什么也没有发生。所以比我尝试过这个

WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
WifiConfiguration wc = new WifiConfiguration();
String networkSSID = SSID;
String networkPass = PASS;
wc.SSID = "\"" + networkSSID + "\"";
wc.preSharedKey = "\""+ networkPass +"\"";
wc.hiddenSSID = true;
List<WifiConfiguration> list = wifi.getConfiguredNetworks();
for( WifiConfiguration i : list ) {
if(i.SSID != null && i.SSID.equals("\"" + networkSSID + "\"")) {

wifi.enableNetwork(i.networkId, true); //Look here

break;

}
}

与此相比

//Above code the same
for( WifiConfiguration i : list ) {
if(i.SSID != null && i.SSID.equals("\"" + networkSSID + "\"")) {
wifi.disconnect(); //See, disconnect..
wifi.enableNetwork(i.networkId, true);
wifi.reconnect(); //Than reconnect!
break;

}
}

但这一更改没有任何作用(即使 WiFi 已打开)。所以我的问题是如何在尚未打开的情况下打开 WiFi,如果已打开则不执行任何操作(我知道我必须使用 if 语句,所以我只是在寻找 WiFi 特定代码)? 谢谢为了您的时间!

最佳答案

您只是想问如何以编程方式在 android 中打开 wifi 吗?

How to programmatically turn off WiFi on Android device?

总结一下:

wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE); 

boolean wifiEnabled = wifiManager.isWifiEnabled();
if(!wifiEnabled){
wifiManager.setWifiEnabled(true);
}

关于java - 连接到 WiFi 为什么 .disconnect() 而不是 reconnect()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11714290/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com