У меня есть два приложения, которые разговаривают друг с другом через приемник. Когда в приложении A нажата кнопка, я транслирую намерение с определенным разрешением. Приложение B затем просыпается, делает некоторые вычисления и снова передает намерение с определенным разрешением для приложения A. В обоих манифестях я определяю разрешение (то же имя), и я также регистрирую оба приемника.Жизненный цикл приемника
<permission android:name="aa.bb.cc.dd"
android:label="permission"
android:protectionLevel="normal"></permission>
<receiver android:name=".receiver"
android:exported="true">
<uses-permission android:name="aa.bb.cc.dd"/>
<intent-filter>
<action android:name= "a_certain_action"/>/>
</intent-filter>
</receiver>
и называть их:
Intent i = new Intent();
i.setAction("a_certain_action");
sendBroadcast(i,"aa.bb.cc.dd");
Однако в то время как это работало совершенное вчера сегодня приемник на приложение B не будет просыпаться, когда я вещать намерения. Почему это?
Для приемников на работу приложение должно работать? – Libathos
Да, «приложение» должно быть запущено. Но не целая активность, просто обслуживание в вашем случае –
Когда я регистрирую приемник в своем манифесте, вы не всегда слушаете событие? – Libathos