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
- Android Yayın Alıcıları
- Yayın Alıcıları ile Uygulamalar Arası İletişim
- Android’de Yayın Alıcıları Kullanma