я сталкивался что-то вроде этого в AndroidManifest.xml:Android BroadcastReceiver без намерения фильтра
<receiver android:name="com.testco.test.TestReceiver"/>
Выше TestReceiver расширяет класс BroadcastReceiver. Я думал, что получатель получит все намерения, но, по-видимому, это не так, и это не сработает, если я не добавлю в него теги фильтра намерения. Итак, что он делает, если у него нет фильтра намерения? Это опечатка или она действительно что-то делает?
UPDATE: Я понял это с помощью этой ссылки Trying to have a Broadcast Receiver with No filter
Вместо вызова радиопередачи с обычным идентификатором Струнного, вы можете установить строку действий намерению, а затем транслировать его. Код примера для справки:
Intent notifyIntent = new Intent(getApplicationContext(), TestReceiver.class);
notifyIntent.setAction("RECEIVE");
sendBroadcast(notifyIntent);
Обращение с BroadcastReceiver одинаково.
Кто бы ни написал этот код, скажите им, что их стиль действия не соответствует стандарту. Он должен следовать за com.packagename.intent.messagehere, это стандарт, который был помещен и как таковой должен соблюдаться. – JoxTraex