Sobes.tech
Junior — Middle

Androidда колдонулган ар кандай Broadcast Receiver түрлөрүн ата аласызбы?

sobes.tech AI

AIден жооп

Androidда эки негизги Broadcast Receiver түрү бар:

  1. Статикалык (Static) Broadcast Receiver-лер — алар колдонмонун манифестинде (AndroidManifest.xml) жарыяланат. Алар колдонмо ишке киришпесе да кеңири тараган билдирүүлөрдү кабыл алат. Бирок, Android 8.0 (API 26) башта, алардын колдонулушу белгилүү системдик окуялар үчүн чектелген, ресурстарды үнөмдөө үчүн.

  2. Динамикалык (Dynamic) Broadcast Receiver-лер — программалык түрдө коддо катталат (көбүнчө onCreate же onResume ичинде) registerReceiver() аркылуу. Алар гана колдонмо же компонент иштеп жатканда жана катталган учурда иштейт.

Ошондой эле, аларды бөлүп көрсөтүүгө болот:

  • Ordered Broadcast Receivers — билдирүүлөрдү тартипте кабыл алат, жана керек болсо, кийинки өткөрүүнү токтотот.
  • Local Broadcast Receivers — бир колдонмо ичинде иштейт, сыртка чыгбайт, бул коопсуздукту жана иштөө ылдамдыгын жогорулатат (LocalBroadcastManager).

Динамикалык каттоонун мисалы:

BroadcastReceiver receiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        // окуяны иштетүү
    }
};
registerReceiver(receiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));