En el teléfono Android, es muy fácil habilitar/deshabilitar WiFi usando el ícono de WiFi, pero ¿se ha preguntado cómo hacer esta tarea mediante programación en Android? qué.
Pasos para habilitar/deshabilitar Wi-Fi mediante programación
Paso 1: Crear un nuevo proyecto
Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . Tenga en cuenta que seleccione Kotlin como lenguaje de programación.
Paso 2: trabajar con el archivo AndroidManifest.xml
Vaya al archivo AndroidManifest.xml y agregue dos permisos de usuario: ACCESS_WIFI_STATE y CHANGE_WIFI_STATE .
<usos-permiso android:name=”android.permission.ACCESS_WIFI_STATE”/>
<usos-permiso android:name=”android.permission.CHANGE_WIFI_STATE”/>
A continuación se muestra el código para el archivo AndroidManifest.xml .
XML
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.wifi"> <!--Put the permissions between the manifest and application opening tags--> <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:roundIcon="@mipmap/ic_launcher_round" 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>
Paso 3: trabajar con el archivo activity_main.xml
Cuando la configuración esté lista, vaya al archivo activity_main.xml , que representa la interfaz de usuario del proyecto. Cree un botón que cambie el estado de Wi-Fi al hacer clic y un TextView que muestre el estado del estado de Wi-Fi. A continuación se muestra el código para el archivo activity_main.xml . Se agregan comentarios dentro del código para comprender el código con más detalle.
XML
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <!--Changes the state of Wi-Fi on button click--> <Button android:id="@+id/wifiSwitch" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:text="Click" /> <!--Displays the state of Wi-Fi on button click--> <TextView android:id="@+id/tv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@id/wifiSwitch" android:layout_centerHorizontal="true" android:hint="Wifi Status" android:textSize="30sp" /> </RelativeLayout>
Paso 4: trabajar con el archivo MainActivity.kt
En el archivo MainActivity.kt , declare el botón, TextView y un administrador de Wi-Fi (consulte los códigos). Al configurar los oyentes al hacer clic en el botón, usaríamos el administrador de Wi-Fi para habilitar o deshabilitar el Wi-Fi. A continuación se muestra el código del archivo MainActivity.kt . Se agregan comentarios dentro del código para comprender el código con más detalle.
Kotlin
import android.net.wifi.WifiManager import android.os.Build import android.os.Bundle import android.widget.Button import android.widget.TextView import androidx.annotation.RequiresApi import androidx.appcompat.app.AppCompatActivity class MainActivity : AppCompatActivity() { @RequiresApi(Build.VERSION_CODES.LOLLIPOP) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // Declaring Button and TextView // 1. Changes the state of Wi-Fi on button click // 2. Shows the state of the Wi-Fi val btn = findViewById<Button>(R.id.wifiSwitch) val textView = findViewById<TextView>(R.id.tv) // Declaring Wi-Fi manager val wifi = applicationContext.getSystemService(WIFI_SERVICE) as WifiManager // On button Click btn.setOnClickListener { // wifi.isWifiEnabled is a boolean, is Wi-Fi is ON, // it switches down and vice-versa wifi.isWifiEnabled = !wifi.isWifiEnabled // For displaying Wi-fi status in TextView if (!wifi.isWifiEnabled) { textView.text = "Wifi is ON" } else { textView.text = "Wifi is OFF" } } } }
Salida: ejecutar en el emulador
Publicación traducida automáticamente
Artículo escrito por aashaypawar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA