Junior — Middle
Android'de kullanılan farklı Broadcast Receiver türlerini isimlendirebilir misiniz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Android'de iki ana Broadcast Receiver türü vardır:
-
Statik (Static) Broadcast Receiver'lar — uygulamanın manifest dosyasında (
AndroidManifest.xml) ilan edilirler. Uygulama çalışmadığında bile yayınlanan mesajları alabilirler. Ancak, Android 8.0 (API 26) itibarıyla, bazı sistem olayları için kullanımları sınırlandırılmıştır, böylece kaynaklar tasarruf edilir. -
Dinamik (Dynamic) Broadcast Receiver'lar — kodda programlı olarak kaydedilirler (genellikle
onCreateveyaonResumeiçinde)registerReceiver()kullanılarak. Sadece uygulama veya bileşen çalıştığı sürece aktiftirler ve kaydedilmiştir.
Ayrıca şu ayrımlar yapılabilir:
- Sıralı Broadcast Receiver'lar (Ordered Broadcast Receivers) — mesajları sıralı olarak alır, ve gerekirse iletimi durdurabilirler.
- Yerel Broadcast Receiver'lar (Local Broadcast Receivers) — sadece aynı uygulama içinde çalışır, dışarı çıkmazlar, bu da güvenliği ve performansı artırır (
LocalBroadcastManagerkullanılır).
Dinamik kayda örnek:
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// olay işleme
}
};
registerReceiver(receiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));