-2

我想知道是否有办法通过代码确定是否启用/禁用了 wifi 配置。我可以使用以下代码:

UserManager um = (UserManager) context
                .getSystemService(Context.USER_SERVICE);

        Bundle restrictions = um.getUserRestrictions();
        LogUtil.d(TAG, "restrictions bundle = " + restrictions.toString());
        if (restrictions
                .containsKey(UserManagerUtils.DISALLOW_CONFIG_WIFI)) {
            boolean isWiFiDisabled = restrictions
                    .getBoolean(UserManagerUtils.DISALLOW_CONFIG_WIFI);
            LogUtil.d(
                    TAG,
                    "restrictions DISALLOW_CONFIG_WIFI = "
                            + isWiFiDisabled );
        }

但我不想使用这段代码。

通常要查找 wi-fi 配置策略是否被禁用,我们可以进入 wi-fi 设置。如果我们可以看到可用和/或连接的 wi-fi 网络列表,则意味着我们的设备所有者启用了 wi-fi 配置。当设备所有者禁用 wi-fi 配置时,我们看不到可用/已连接网络的列表。但是在这种情况下,如果我们已经连接到某个网络,那么我们仍然可以通过该网络访问 Internet。

请让我知道是否有任何其他方法可以找出 wi-fi 配置状态。

4

1 回答 1

0

使用以下检查它是否已启用

boolean wifiEnabled = wifiManager.isWifiEnabled();

但在此之前,您需要在清单文件中具有以下权限:

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

然后你可以在你的活动类中使用以下启用/禁用:

WifiManager wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE); 
wifiManager.setWifiEnabled(true);
wifiManager.setWifiEnabled(false);
于 2014-12-10T10:28:54.270 回答