web-dev-qa-db-ja.com

アプリケーションからWiFiを有効/無効にする方法は?

Androidアプリケーションからwifiを有効/無効にしたいのですが、どうすればよいですか?

30
Mustafa İrer
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
wifi.setWifiEnabled(false); // true or false to activate/deactivate wifi

また、AndroidManifest.xmlで許可をリクエストする必要があります。

<uses-permission Android:name="Android.permission.CHANGE_WIFI_STATE" />
47
Codii

アプリケーションでWiFiを有効/無効にするには、WiFiManagerクラスを使用する必要があります。 WiFiManagerクラスのオブジェクトを作成して、WiFiのサービスを取得します。

WifiManager wifi;
wifi=(WifiManager)getSystemService(Context.WIFI_SERVICE);

wifi.setWifiEnabled(false);//Turn off Wifi

wifi.setWifiEnabled(true);//Turn on Wifi

そして、AndroidManifest.xmlに次のアクセス許可を設定する必要があります

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

<uses-permission Android:name="Android.permission.INTERNET" />

<uses-permission Android:name="Android.permission.CHANGE_WIFI_STATE"/>
<uses-permission Android:name="Android.permission.UPDATE_DEVICE_STATS" />

<uses-permission Android:name="Android.permission.WAKE_LOCK" />

Android UIを使用してWifiを有効/無効にするサンプルコード全体を取得するには、 このWebサイト

14

このコードを試してください

 Intent gpsOptionsIntent = new Intent(  Android.provider.Settings.ACTION_WIFI_SETTINGS);  
            startActivityForResult(gpsOptionsIntent,0); 
3
kannappan

これを試して

public void disableWifi(Context context, Boolean bool) {
    WifiManager wifi = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);

    if(bool)
        wifi.setWifiEnabled(false);
    else
        wifi.setWifiEnabled(true);
}
1
Joolah
public class MainActivity extends AppCompatActivity {

    Switch btn;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btn = (Switch) findViewById(R.id.switch1);
        btn.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                if (isChecked) {
                    toggleWiFi(true);
                    Toast.makeText(getApplicationContext(), "Wi-Fi Enabled!", Toast.LENGTH_LONG).show();
                } else {
                    toggleWiFi(false);
                    Toast.makeText(getApplicationContext(), "Wi-Fi Disabled!", Toast.LENGTH_LONG).show();
                }
            }
        });
    }

    public void toggleWiFi(boolean status){
        WifiManager wifiManager = (WifiManager)this.getSystemService(WIFI_SERVICE);
        if (status && !wifiManager.isWifiEnabled()) {
            wifiManager.setWifiEnabled(true);
        } else if (!status && wifiManager.isWifiEnabled()) {
            wifiManager.setWifiEnabled(false);
        }
    }
}

マニフェストファイルにユーザー権限を追加する

0