Junior
Как да свържете BroadcastReceiver за получаване на съобщения?
sobes.tech AI
Отговор от AI
Има два начина:
-
Статично в манифест:
<application ...> <receiver android:name=".MyBroadcastReceiver"> <intent-filter> <action android:name="com.example.MY_ACTION" /> </intent-filter> </receiver> </application>— Създава се при стартиране на приложението, дори ако то не е активно. — По-малко гъвкав, но надежден за системни събития.
-
Динамично в кода:
// В активност или услуга IntentFilter filter = new IntentFilter("com.example.MY_ACTION"); MyBroadcastReceiver receiver = new MyBroadcastReceiver(); registerReceiver(receiver, filter); // Не забравяйте да отмените регистрацията при необходимост // unregisterReceiver(receiver);— Създава се и се регистрира по време на изпълнение. — По-гъвкав, подходящ за събития вътре в приложението. — Необходимо е ръчно да се отменя регистрацията, за да се избегнат течове на памет.