GİRİŞ
Mobil uygulamalar sadece kullanıcı etkileşimiyle değil, aynı zamanda cihazın sistem olaylarına verdiği tepkilerle de anlam kazanır. Örneğin telefonun şarjının azalması, internet bağlantısının kesilmesi ya da ekranın kapanması gibi durumlar, uygulamalar için önemli tetikleyicilerdir.
Android işletim sistemi, bu tür olayları geliştiricilere iletmek için BroadcastReceiver adı verilen bir mekanizma sunar.
Bu yapı sayesinde uygulamalar:
- Sistemde olan biteni “dinler”
- Olay gerçekleştiğinde otomatik tepki verir
BroadcastReceiver NEDİR?
BroadcastReceiver, Android’de yayınlanan (broadcast) sistem olaylarını yakalayan bir bileşendir.
Basit mantık:
- Sistem bir olay üretir (örnek: pil azaldı)
- Android bu olayı “yayınlar”
- BroadcastReceiver bu yayını yakalar
- Sen de buna göre işlem yaparsın
BroadcastReceiver NASIL ÇALIŞIR?
BroadcastReceiver rürekli çalışan bir yapı değildir. Olay geldiğinde çalışır ve kapanır
Yani: “tetiklenince çalışan hafif bir sistemdir”.
✔ Sistemle entegre çalışır
✔ Otomatik tepki sağlar
✔ Arka planda işlem yapabilir
✔ Enerji dostudur
BroadcastReceiver 3 temel yapıdan oluşur:
1. Olay (Broadcast)
Sistem tarafından gönderilir.
Örnekler:
- Pil azaldı → ACTION_BATTERY_LOW
- Şarj takıldı → ACTION_POWER_CONNECTED
- Ekran kapandı → ACTION_SCREEN_OF
2. Intent (Veri Taşıyıcı)
Olayla birlikte gelen bilgi paketidir.
Intent içinde:
- Olayın türü
- Ek bilgiler (extras)
bulunur.
3. Receiver (Dinleyici)
Senin yazdığın sınıf.
Görevi: Olayı yakalamak ve işlem yapmak
ÖRNEK: PİL DÜŞÜNCE UYARI VERME
Aşağıdaki örnekte pil seviyesi düştüğünde kullanıcıya mesaj gösterilir:
???? Burada olan şey:
- Sistem → “pil düşük” yayını gönderir
- Receiver → bunu yakalar
- Uygulama → Toast gösterir
Örneğin , Pil Seviyesi düştüğünde, kullanıcıya uyarı vermek için Broadcast kullaniblirsiniz.
5. MANIFEST GEREKLİLİĞİ
Receiver’ın çalışması için manifest dosyasına eklenmesi gerekir:
BROADCAST ile HANGİ BİLGİLER ALINABİLİR?
BroadcastReceiver ile birçok sistem bilgisi alınabilir:
Pil Bilgileri
Ağ Bilgileri
-
İnternet var mı?
- Wi-Fi bağlı mı?
Şarj Durumu
Ekran Durumu
Sistem Olayları
- Uçak modu
- Saat değişimi
- Dil değişimi
SONUÇ
BroadcastReceiver, Android uygulamalarında sistem olaylarına tepki vermek için kullanılan en önemli yapılardan biridir. Bu yapı sayesinde uygulamalar daha akıllı, dinamik ve kullanıcı dostu hale gelir.
Özellikle:
- Pil yönetimi
- Bildirim sistemleri
- Arka plan işlemleri
gibi alanlarda büyük avantaj sağlar.