WiFi 状态未启用

发布于 2024-12-24 16:32:14 字数 511 浏览 4 评论 0原文

我正在尝试创建一个用于启用和禁用 wifi 的小部件。

if(myWifiManager.isWifiEnabled()){
            System.out.println("Toggle Wifi Enabled going to disable");
            myWifiManager.setWifiEnabled(false);
        }
        else{
            System.out.println("Wifi Disabled going to enable ");

            myWifiManager.setWifiEnabled(true);
            System.out.println("WI: "+myWifiManager.isWifiEnabled());
        }

这是我正在使用的代码,禁用部分工作正常,但启用部分工作不正常。启用 wifi 后不久,我正在打印 wifi 状态,但我发现它是错误的。

I am trying to create a widget for enabling and disabling the wifi.

if(myWifiManager.isWifiEnabled()){
            System.out.println("Toggle Wifi Enabled going to disable");
            myWifiManager.setWifiEnabled(false);
        }
        else{
            System.out.println("Wifi Disabled going to enable ");

            myWifiManager.setWifiEnabled(true);
            System.out.println("WI: "+myWifiManager.isWifiEnabled());
        }

This is the code i am using the disabling part is working fine but the enabling part is not working fine. Soon after enabling the wifi i am printing the wifi state i am getting it as false.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

染年凉城似染瑾 2024-12-31 16:32:14

以下是如何在 Android 中打开和关闭 wifi。

首先,您需要在清单文件中声明以下内容

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.UPDATE_DEVICE_STATS"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission>

在您的 Activity 类上执行此操作后

private WifiManager wifiManager;
@Override 
public void onCreate(Bundle icicle) {
 ....................
 wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);
 if(wifiManager.isWifiEnabled()){
 wifiManager.setWifiEnabled(false);
 }else{
wifiManager.setWifiEnabled(true);
}

}

说明

从我们的系统获取 Wifi 服务

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

< strong>检查我们的 wifi 当前是否打开或关闭

if(wifiManager.isWifiEnabled()){

打开/关闭我们的 wifi
wifiManager.setWifiEnabled();

参考

WifiEnabler

http://google-androidlovers.blogspot.com/2012/01/扫描无线网络-in-android.html

http://www.java2s。 com/Open-Source/Android/android-platform-apps/Settings/com/android/settings/wifi/WifiApEnabler.java.htm

Here is how to turn on and turn off wifi in android.

First you need to declare the following in your manifest file

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.UPDATE_DEVICE_STATS"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission>

After doing it that on your Activity class

private WifiManager wifiManager;
@Override 
public void onCreate(Bundle icicle) {
 ....................
 wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);
 if(wifiManager.isWifiEnabled()){
 wifiManager.setWifiEnabled(false);
 }else{
wifiManager.setWifiEnabled(true);
}

}

Explanation

Get the Wifi service from our system

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

Check the our wifi is currently turned on or turned off

if(wifiManager.isWifiEnabled()){

Turn on/off our wifi
wifiManager.setWifiEnabled();

Reference

WifiEnabler

http://google-androidlovers.blogspot.com/2012/01/scan-for-wireless-networks-in-android.html

http://www.java2s.com/Open-Source/Android/android-platform-apps/Settings/com/android/settings/wifi/WifiApEnabler.java.htm

沧桑㈠ 2024-12-31 16:32:14

已弃用:从 Build.VERSION_CODES#Q 开始,应用程序不再
允许启用/禁用 Wi-Fi。兼容性说明:适用于应用程序
针对 android.os.Build.VERSION_CODES#Q 或更高版本,此 API 将
总是失败并返回 false。如果应用程序针对较旧的 SDK
(android.os.Build.VERSION_CODES#P 或以下),他们可以继续使用
这个API。

来源

所以这仅适用于设备与 Android Pie 及以下版本。

Deprecated: Starting with Build.VERSION_CODES#Q, applications are not
allowed to enable/disable Wi-Fi. Compatibility Note: For applications
targeting android.os.Build.VERSION_CODES#Q or above, this API will
always fail and return false. If apps are targeting an older SDK
(android.os.Build.VERSION_CODES#P or below), they can continue to use
this API.

(Source)

So this will only work for devices with android Pie and below.

鲜血染红嫁衣 2024-12-31 16:32:14

下载这个例子,它就是你想要的

https://github.com/siddhpuraamitr/WIfi-Toggle-Widget

Download this example it is what you want

https://github.com/siddhpuraamitr/WIfi-Toggle-Widget

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文