Junior — Middle
Hoe implementeer je een Broadcast Receiver-component die alleen binnen de huidige applicatie werkt?
sobes.tech AI
Antwoord van AI
Om ervoor te zorgen dat de Broadcast Receiver alleen binnen de huidige applicatie werkt, moet deze dynamisch worden geregistreerd via code, niet in het manifest. Met dynamische registratie met registerReceiver() ontvangt de ontvanger alleen de broadcast-berichten die binnen de applicatie worden verzonden.
Voorbeeld:
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// gebeurtenisverwerking
}
};
// Registratie in een Activity of Service
IntentFilter filter = new IntentFilter("com.example.MY_ACTION");
registerReceiver(receiver, filter);
// Vergeet niet om je af te melden
unregisterReceiver(receiver);
Op deze manier beperk je het bereik van de Broadcast Receiver tot de huidige applicatie, omdat andere systemen of applicaties dergelijke lokale broadcast-berichten niet kunnen verzenden.