Sobes.tech
Junior — Middle

Чӣ гуна ҷузъи Broadcast Receiver-ро, ки танҳо дар доираи барномаи ҳозира кор мекунад, амалӣ кардан мумкин аст؟

sobes.tech AI

Ҷавоб аз AI

Ҳозирги дастурда ишлайдиган Broadcast Receiver фақат ҳозирги дастур доирасида ишлаши учун, уни динамик равишда код орқали рўйхатдан ўтказиш керак, манифестда эмас. registerReceiver() ёрдамида динамик рўйхатдан ўтказишда, қабул қилувчи фақат дастур ичида юборилган эфир хабарларини олади.

Масалан:

BroadcastReceiver receiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        // воқеани қайта ишлаш
    }
};

// Activity ёки Serviceда рўйхатдан ўтказиш
IntentFilter filter = new IntentFilter("com.example.MY_ACTION");
registerReceiver(receiver, filter);

// Эҳтиёт бўлинг, рўйхатдан чиқишни унутманг
unregisterReceiver(receiver);

Шу тариқа, сиз Broadcast Receiverнинг таъсир доирасини ҳозирги дастур билан чеклайсиз, чунки тизим ёки бошқа дастурлар бундай маҳаллий эфир хабарларини юборолмайди.