Local Broadcast Manager es una de las características más importantes que se ve en la mayoría de las aplicaciones que usamos. Esta característica generalmente funciona en segundo plano y no podemos ver eso. BroadCast Manager nos notificará cuando ocurra un evento específico. Por ejemplo, cuando estamos suscritos a cualquiera de los cursos en GeeksfoGeeks cuando se está realizando una actualización o un concurso en ese curso, se nos notifica por correo electrónico sobre ese evento. En ese lugar, se utiliza BroadCast Manager, que notifica a los usuarios con un mensaje, correo o cualquier otro formato con respecto a un evento específico. En este artículo, veremos cómo usar este Broadcast Manager en nuestra aplicación de Android.
¿Cómo usar Broad Cast Manager en Android?
Para usar Broad Cast Manager en nuestra aplicación de Android, el proceso de uso se divide en dos tipos en los que primero debemos registrar nuestra transmisión y luego recibir actualizaciones de la misma transmisión.
Paso 1: Registrar una transmisión
Para realizar una acción específica usando el administrador de transmisión, primero debemos registrar nuestra transmisión y solo entonces podemos usar esta transmisión para recibir actualizaciones. Hay 2 formas de registrar nuestra transmisión, podemos registrarla en nuestro archivo de manifiesto de Android o en nuestra actividad donde queremos recibir sus actualizaciones.
Paso 2: Recibir las actualizaciones de Broadcast
Este paso sirve para recibir las actualizaciones que enviaremos a través de nuestro Broadcast Manager luego de realizar una determinada acción dentro de nuestra aplicación. Para recibir las actualizaciones, utilizaremos el método onRecieve() para recibir la actualización.
¿Qué vamos a construir?
Construiremos una aplicación simple en la que enviaremos nuestros datos usando el administrador de transmisión al hacer clic en el botón. A continuación se muestra el video en el que veremos lo que vamos a construir en este artículo.
Implementación paso a paso de Broadcast Manager
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 Java como lenguaje de programación.
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 .
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:id="@+id/idRLView" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <!--text view for receiving our data updates using broad cast manager--> <TextView android:id="@+id/idTVHeading" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerInParent="true" android:padding="10dp" android:text="Welcome" android:textAlignment="center" android:textAllCaps="false" android:textColor="@color/black" android:textSize="30sp" /> <!--button for sending the updated data with the help of broad cast manager--> <Button android:id="@+id/idBtnStartBroadCast" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/idTVHeading" android:layout_centerInParent="true" android:layout_marginTop="30dp" android:text="Send BroadCast" android:textAllCaps="false" /> </RelativeLayout>
Paso 3: trabajar con el archivo MainActivity.java
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.
Java
import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; import androidx.localbroadcastmanager.content.LocalBroadcastManager; public class MainActivity extends AppCompatActivity { // creating a variable for // our text view and button private TextView headingTV; private Button sendBroadCastBtn; // on below line we are creating a new broad cast manager. private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() { // we will receive data updates in onRecieve method. @Override public void onReceive(Context context, Intent intent) { // Get extra data included in the Intent String message = intent.getStringExtra("message"); // on below line we are updating the data in our text view. headingTV.setText(message); } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // initializing our variables. headingTV = findViewById(R.id.idTVHeading); sendBroadCastBtn = findViewById(R.id.idBtnStartBroadCast); // on below line we are registering our local broadcast manager. LocalBroadcastManager.getInstance(this).registerReceiver(broadcastReceiver, new IntentFilter("custom-action-local-broadcast")); // on below line we are adding click listener to our button sendBroadCastBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // inside on click we are calling the intent with the action. Intent intent = new Intent("custom-action-local-broadcast"); // on below line we are passing data to our broad cast receiver with key and value pair. intent.putExtra("message", "Welcome \n to \n Geeks For Geeks"); // on below line we are sending our broad cast with intent using broad cast manager. LocalBroadcastManager.getInstance(MainActivity.this).sendBroadcast(intent); } }); } }
Ahora ejecute su aplicación y vea el resultado de la aplicación.
Producción:
Publicación traducida automáticamente
Artículo escrito por chaitanyamunje y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA