Так что в основном это вопрос, когда я регистрирую Broadcastreceiver
динамически, его необходимо незарегистрировать по адресу onDestroy
. Но когда Broadcastreceiver
зарегистрирован в манифесте, нужно ли его отменить?Android Broadcastreceiver не регистрируется при регистрации в манифесте?
ответ
Вы должны быть осторожны при добавлении широковещательного приемника, потому что не нужно broadcast receivers
Слить аккумуляторную батарею.
Если вы добавите широковещательный приемник в файл манифеста Android , подразумевается, что вы собираетесь обрабатывать конкретное намерение в широковещательном приемнике и не игнорировать его.
Вы можете использовать PackageManager
для включения/выключения BroadcastReceiver
, указанных в манифесте. Broadcast Receiver
будет запущен только тогда, когда он включен.
Для получения дополнительной информации см Android - how to unregister a receiver created in the manifest?
Существует способ, чтобы включить и отключить широковещательный приемник, который добавляется в файле манифеста.
Смотрите этот пост Android broadcast receiver: Registering/unregistering during runtime
Вы не можете отменить регистрацию зарегистрированного манифеста приемника. Если приемник включен, он всегда будет слушать трансляции.
любезно пожалуйста, можно сказать, у меня, как установить манифест зарегистрированного приемника должен быть отключен? Я попробовал андроид: enabled = "false" и в onStrat() я проверил, включен ли приемник или нет, но я обнаружил, что он всегда находится в COMPONENT_ENABLED_STATE_DEFAULT – user2121
@ user2121: Ну, 'android: enabled =" false "' should Работа. Вы можете изменить его программно, вызывая 'setComponentEnabledSetting()' на 'PackageManager'. – CommonsWare
- 1. Android BroadcastReceiver не регистрируется
- 2. Android BroadcastReceiver nullpointerexception при регистрации
- 3. BroadcastReceiver не найден в манифесте
- 4. Регистрация BroadcastReceiver в манифесте
- 5. BroadcastReceiver не имеет конструктора по умолчанию в манифесте android
- 6. Sms BroadcastReceiver не регистрации
- 7. Страница регистрации не регистрируется
- 8. BroadcastReceiver регистрации и отмена регистрации не работает в Android
- 9. BroadcastReceiver onReceive срабатывает при регистрации
- 10. Android: Остановить locationManager от обновления в broadcastreceiver, зарегистрированном в манифесте
- 11. Журнал регистрации gemfirexd не регистрируется
- 12. Android - получите ссылку на BroadcastReceiver, определенную в манифесте
- 13. BroadcastReceiver, объявленный в манифесте, не принимает широковещательную рассылку
- 14. Исключения при регистрации службы и BroadcastReceiver
- 15. Может ли ACTION_USER_PRESENT BroadcastReceiver не регистрироваться в манифесте?
- 16. Android - не может позволить BroadcastReceiver
- 17. Android - BroadcastReceiver не работает
- 18. Отключить/Включить BroadcastReceiver при необходимости
- 19. Ошибка при использовании BroadcastReceiver на Android
- 20. Android KeyEvent Не регистрируется
- 21. PJSIP не регистрируется (Android)
- 22. Android BroadcastReceiver не работает при назначении
- 23. Ошибки в манифесте android
- 24. Log4Net не регистрируется при развертывании
- 25. ANDROID BroadcastReceiver не срабатывает
- 26. Android - BroadcastReceiver не работает
- 27. Android BroadcastReceiver не срабатывает
- 28. BroadcastReceiver не работает на Android 3.0
- 29. Android Internet Permission не работает при правильном манифесте
- 30. PACKAGE_ADDED BroadcastReceiver не работает
Настоящий аккумулятор! Так что да, я использую один с Bluetooth-соединением, но у моего приложения несколько действий. При регистрации в динамическом режиме он, похоже, останавливается, когда начинается другая активность, чем основная, но при регистрации в манифесте она работает идеально. Но это продолжается даже после того, как происходит 'onDestroy'. Я планировал отключить их на 'onDestroy'. Кстати, ваши ссылки очень полезны! – gkapellmann