Android Broadcast Receiver Pass Data To Main Activity

Android Yayın Alıcısı ile Ana Etkinliğe Veri Aktarma

Android’de yayın alıcıları, sistem veya diğer uygulamalar tarafından tetiklenen olayları dinlemek ve bunlara yanıt vermek için kullanılan bileşenlerdir. Yayın alıcılar, ana etkinliğe veri aktarmak için kullanılabilir ve bu da uygulamalar arasında iletişim kurmayı kolaylaştırır.

Yayın Alıcısı Oluşturma

Bir yayın alıcısı oluşturmak için, BroadcastReceiver sınıfını genişleten bir sınıf oluşturmanız gerekir. Bu sınıf, onReceive() yöntemini geçersiz kılmalıdır. onReceive() yöntemi, yayın alındığında çağrılır ve yayınla ilişkili verileri içerir.

“`java
public class MyBroadcastReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {
    // Yayınla ilişkili verileri alın
    String data = intent.getStringExtra("data");

    // Ana etkinliğe veriyi aktarın
    Intent activityIntent = new Intent(context, MainActivity.class);
    activityIntent.putExtra("data", data);
    context.startActivity(activityIntent);
}

}
“`

Yayın Alıcısını Kaydetme

Yayın alıcısını kaydetmek için registerReceiver() yöntemini kullanmanız gerekir. Bu yöntem, yayın alıcısını dinleyeceği eylemi ve yayın alıcısının örneğini alır.

java
IntentFilter filter = new IntentFilter();
filter.addAction("com.example.MY_ACTION");
registerReceiver(myBroadcastReceiver, filter);

Ana Etkinlikte Veri Alma

Ana etkinlikte, onNewIntent() yöntemini geçersiz kılarak yayın alıcısından gelen verileri alabilirsiniz. onNewIntent() yöntemi, etkinlik yeni bir amaçla başlatıldığında çağrılır.

“`java
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);

// Yayın alıcısından gelen verileri alın
String data = intent.getStringExtra("data");

// Verileri kullanın

}
“`

Örnek Kullanım Senaryosu

Yayın alıcıları, aşağıdakiler gibi çeşitli senaryolarda ana etkinliğe veri aktarmak için kullanılabilir:

  • Bir hizmetten ana etkinliğe veri göndermek
  • Bir bildirimden ana etkinliğe veri göndermek
  • Bir başka uygulamadan ana etkinliğe veri göndermek

Faydalı Kaynaklar


Yayımlandı