Junior — Middle
Dastur davomida Broadcast Receiver ni yaratish va ro'yxatdan o'tkazish mumkinmi, manifest orqali emasmi?
sobes.tech AI
AIdan javob
Да, в Android можно создать и зарегистрировать BroadcastReceiver динамически во время выполнения программы, а не только через манифест. Для этого используется метод registerReceiver() в коде, обычно в Activity или Service. Такой прием позволяет принимать широковещательные сообщения только пока активен компонент, что удобно для экономии ресурсов и безопасности.
Пример динамической регистрации:
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// Обработка полученного сообщения
}
};
// Регистрация
registerReceiver(receiver, new IntentFilter("android.intent.action.SOME_ACTION"));
// Не забывайте отписываться
unregisterReceiver(receiver);
В отличие от регистрации в манифесте, динамически зарегистрированные ресиверы живут только пока активен компонент, который их зарегистрировал.