如何以编程方式在Android中启用或者禁用WiFi
时间:2020-02-23 14:29:27 来源:igfitidea点击:
在本教程中,我们将看到如何以编程方式在Android中启用或者禁用WiFi。
从Android代码启用或者禁用WiFi非常简单。
用于启用WiFi:
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); wifi.setWifiEnabled(true);
用于禁用WiFi:
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); wifi.setWifiEnabled(false);
因此,我们可以使用Wifimanger类启用或者禁用WiFi。
我们需要在AndroidManifest.xml中添加另外的权限以启用或者禁用WiFi。
步骤1 :
创建一个Android应用程序ProjectNamed"EnableDisableWifiaPP"。
第2步:
在AndoridManifest.xml中添加以下权限。
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"
转到APP - > SRC - > Main - > AndroidManifest.xml并添加上面的权限。
androidmanifest.xml将如下XML。
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.theitroad.enabledisablewifiapp"> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" <category android:name="android.intent.category.LAUNCHER" </intent-filter> </activity> </application> </manifest>
第3步:
更改RES - >布局 - > Activity_main.xml如下所示:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="16dp" android:gravity="center" android:orientation="vertical"> <ToggleButton android:id="@+id/toggleButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="false" <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="16dp" </LinearLayout>
第四步:
更改src/main/packageName/mainActivity.java如下:
package com.theitroad.enabledisablewifiapp; import android.content.Context; import android.net.wifi.WifiManager; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.CompoundButton; import android.widget.TextView; import android.widget.ToggleButton; import com.theitroad.enabledisablewifiapp.R; public class MainActivity extends AppCompatActivity { ToggleButton toggleButton; TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //Getting toggle button and textView from activity_main toggleButton = (ToggleButton) findViewById(R.id.toggleButton); textView = (TextView) findViewById(R.id.textView); //Put listener on toggle button toggleButton.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean checked) { if (checked) { textView.setText("WiFi is ON"); WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); wifi.setWifiEnabled(true); } else { textView.setText("WiFi is OFF"); WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); wifi.setWifiEnabled(false); } } }); //For initial setting if (toggleButton.isChecked()) { textView.setText("WiFi is ON"); WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); wifi.setWifiEnabled(true); } else { textView.setText("WiFi is OFF"); WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); wifi.setWifiEnabled(false); } } }
第5步:
运行应用程序