-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 構成を有効にしていることを意味します。デバイスの所有者が wi-fi 構成を無効にすると、利用可能な/接続されたネットワークのリストが表示されなくなります。ただし、この場合、既に何らかのネットワークに接続している場合は、そのネットワークを介してインターネットにアクセスできます。

他に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 に答える