¿Cómo verificar el estado del modo avión en Android mediante programación?

El modo avión a menudo se ve en acción durante los vuelos, evitando llamadas o reiniciando la red en teléfonos móviles, tabletas y computadoras portátiles. El modo avión es un modo independiente en el que el dispositivo rechaza las comunicaciones por radio. Estos pueden incluir wifi, GPS, red telefónica, punto de acceso, según el año de fabricación, la marca y el lugar de compra del dispositivo, pero no el Bluetooth. Las aplicaciones compatibles con la transmisión pueden requerir conectividad a Internet y deben mantenerse actualizadas sobre el estado de la conexión a Internet. Si bien el Modo avión afecta la conectividad a Internet, tales aplicaciones requerirían alternativas para manejar tal instancia. A través de este artículo, le mostraremos cómo puede verificar mediante programación el estado del modo avión.

Implementación paso a paso

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 . Demostramos la aplicación en Kotlin , así que asegúrese de seleccionar Kotlin como idioma principal al crear un nuevo proyecto.

Paso 2: trabajar con el archivo activity_main.xml

Vaya a la aplicación > res > diseño > actividad_principal.xml y agregue el siguiente código a ese archivo. A continuación se muestra el código para el archivo activity_main.xml . Cree un botón en el archivo de diseño.

XML

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
  
    <Button
        android:id="@+id/Check"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Check"
        android:layout_centerInParent="true"/>
  
</RelativeLayout>

Paso 3: trabajar con el archivo MainActivity.kt

Vaya al archivo MainActivity.java y consulte el siguiente código. A continuación se muestra el código del archivo MainActivity.java . Se agregan comentarios dentro del código para comprender el código con más detalle. A continuación se muestra el código para comprobar si está en modo avión.

Kotlin

import android.os.Build
import android.os.Bundle
import android.provider.Settings
import android.widget.Button
import android.widget.Toast
import androidx.annotation.RequiresApi
import androidx.appcompat.app.AppCompatActivity
  
class MainActivity : AppCompatActivity() {
  
    @RequiresApi(Build.VERSION_CODES.JELLY_BEAN_MR1)
      
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
  
        // Find the button from the layout file
        // and add functionality to it
        val btn = findViewById<Button>(R.id.Check)
        btn.setOnClickListener {
            
            // Get the value of AIRPLANE MODE 
            // from the system settings.
            // This is an Integer. Airplane Mode 
            // is ON is its 1 and 0 otherwise.
            // Toast the message (off/on)
            if(Settings.System.getInt(contentResolver, Settings.Global.AIRPLANE_MODE_ON, 0) == 0){
                Toast.makeText(applicationContext,"Off",Toast.LENGTH_SHORT).show()
            } else {
                Toast.makeText(applicationContext,"On",Toast.LENGTH_SHORT).show()
            }
        }
    }
}

Aporte:

Compruebe si el modo avión está desactivado. Ahora haga clic en el botón. Obtendremos un mensaje de que está apagado. Ahora encienda el modo avión. Vuelve a la actividad y vuelve a hacer clic en el botón. Obtendremos un mensaje de que está encendido.

Producción:

Consejo útil:

Tenga en cuenta que no podemos cambiar el estado del modo avión mediante programación. Tenemos una disposición para cambiarlo solo si la aplicación es una aplicación del sistema. Esto se puede hacer agregando permiso para escribir configuraciones en el archivo Manifest y llamando a una función putInt() en Settings.System .

Publicación traducida automáticamente

Artículo escrito por aashaypawar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *