Sobes.tech
Junior — Middle

როგორ განახორციელოთ BroadcastReceiver-ის მუშაობის დაწყება Android აპლიკაციაში?

sobes.tech AI

პასუხი AI-სგან

Android-ში BroadcastReceiver-თან მუშაობის დაწყებისთვის არსებობს ორი ძირითადი მეთოდი:

  1. სტატიკური რეგისტრაცია მანიაფესტში — დამატებულია AndroidManifest.xml-ში. ასეთი მიმღები მიიღებს გამავრცელებელ შეტყობინებებს, თუნდაც თუ აპლიკაცია არ არის გაშვებული.
<receiver android:name=".MyBroadcastReceiver">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>
  1. დინამიკური რეგისტრაცია კოდში — რეგისტრირდება აქტივობაში ან სერვისში registerReceiver()-ის გამოყენებით. მუშაობს მხოლოდ მაშინ, როდესაც აპლიკაცია აქტიურია.
BroadcastReceiver receiver = new MyBroadcastReceiver();
IntentFilter filter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(receiver, filter);

მეთოდის არჩევანი დამოკიდებულია დავალებაზე: სისტემური მოვლენებისთვის, რომლებიც ყოველთვის უნდა იჭეროს — სტატიკური რეგისტრაცია; დროებით მოვლენებისთვის — დინამიკური რეგისტრაცია.